【问题标题】:React bootstrap auto layout columns not being responsive反应引导自动布局列没有响应
【发布时间】:2021-07-12 04:22:51
【问题描述】:

我正在尝试遵循 React Bootstrap 的自动布局documentation,当它显示在我的代码上时,它为列值提供了自己的空间,并且不允许它们像文档中那样响应。

代码如下:

function App() {
  return (
    <div>
    <Container fluid>
      <Row className="row">
        <Col className="column">1 of 2</Col>
        <Col className="column">2 of 2</Col>
      </Row>
      <Row className="row">
        <Col className="column">1 of 3</Col>
        <Col className="column">2 of 3</Col>
        <Col className="column">3 of 3</Col>
      </Row>
    </Container>
    </div>
  );
}

如果您检查文档的“自动布局”部分,它应该具有相同的效果,即列尽可能长地占用第一个空间。

我已经

  • 添加 react-bootstrap 并通过终端安装

如您所见,“2 of 2”应该与“1 of 2”处于同一级别,并且应该根据文档中的自动布局属性减半,但它没有这样做。

如何让它工作?

【问题讨论】:

  • 看看我的回答,也许对你有帮助:)
  • @Sowam 不抱歉,它没有用。 :(
  • 你能创建一个沙盒吗? @JRP

标签: css reactjs react-bootstrap


【解决方案1】:

我认为你没有导入react-bootstrap的css

只需添加

<link
  rel="stylesheet"
  href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/css/bootstrap.min.css"
  integrity="sha384-B0vP5xmATw1+K9KRQjQERJvTumQW0nPEzvF6L/Z6nronJ3oUOFUFpCjEUQouq2+l"
  crossorigin="anonymous"
/>

进入你的index.html

import 'bootstrap/dist/css/bootstrap.min.css';

在您的App.jsRoot.js 两者都应该工作, 找到here

【讨论】:

  • 他可能正在使用反应,所以你不能像那样导入引导程序。你使用react-bootstrap.github.io/getting-started/introduction这个文档
  • 当然可以。这是他的项目,不是我们的。两者都可以,就像文档说的How and which Bootstrap styles you include is up to you...
【解决方案2】:

首先不要把div放在它周围,你可以在里面添加空元素就像

function App() {
  return (
    <>
      //rest of code
    </>
  );
} 

或更好的选择 - 使用 react fragment:

 function App() {
      return (
     <Fragment>
        // rest of code
      </Fragment>
      );
    } 

第二件事 - 您不必向引导元素添加任何类名。行和列将自动设置样式,因此您的代码应如下所示:

function App() {
  return (
   <Fragment>
    <Container fluid>
      <Row>
        <Col>1 of 2</Col>
        <Col>2 of 2</Col>
      </Row>
      <Row>
        <Col>1 of 3</Col>
        <Col>2 of 3</Col>
        <Col>3 of 3</Col>
      </Row>
    </Container>
   </Fragment>
  );
}

它应该可以工作,如果没有,你肯定会以错误的方式导入引导程序

【讨论】:

  • 很好,这是很多很好的做法,但并不能解决他的问题。
  • @ViniciusKatata 在你的回答中你说使用反应的人应该在链接 rel 中导入引导程序......这是完全错误的。在反应中,您在开始时通过 import 导入库,而不是在链接 rels 中
  • @Sowam 避免额外的 div 很好。为了使答案完整,我认为您还应该按照docs 中的建议为 OP 添加有关导入样式表的注释。关于删除“className”的好点。
  • 可以使用 importlink 但使用importjust better for reasons listed in the docs。 : 脚本和样式表被缩小并捆绑在一起以避免额外的网络请求
猜你喜欢
  • 2021-10-23
  • 2017-04-16
  • 2021-05-01
  • 2014-11-17
  • 1970-01-01
  • 1970-01-01
  • 2018-07-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多