реакция- bootstrap строка заполняет все доступное пространство - PullRequest
1 голос
/ 20 января 2020

Мне нужно растянуть строку до начала нижнего колонтитула. Bootstrap имеет класс h-100, но он не работает в моем случае, и я не знаю, почему.
Я новичок во внешнем интерфейсе, но я все примеры на inte rnet не помогли Я (

<div className="App">
  <header>
    <h1>App</h1>
  </header>
  <main>
    <Container fluid>
      <Row className="h-100">
        <Col xs={2} className="ml-0 bg-secondary">
          <Sidebar />
        </Col>
        <Col className="p-1 p-md-4">
          <AnotherComponent />
        </Col>
      </Row>
    </Container>
  </main>
  <footer>
    <p>
      Footer text
    </p>
  </footer>
</div>

Результат: result

Обновление: после добавления класса vh-100 в Контейнер Upd

Upd: установить положение относительно Главный экран: main После прокрутки: scroll

Ответы [ 2 ]

1 голос
/ 20 января 2020

Попробуйте задать полную высоту просмотра для вашего контейнера напрямую

 <Container className="vh-100 d-flex flex-column "> 
       <Row className="h-100">
  ......
0 голосов
/ 20 января 2020

class h-100 будет принимать родительскую высоту, поэтому здесь Row будет принимать высоту контейнера, которая является высотой строки, необходимой для отображения его дочерних элементов. что вам нужно сделать, это рассчитать высоту оставшегося пространства:

container Height = (fullpage height) -(footer height + header height)

код с реагировать здесь

  componentDidMount(){
    const header = document.querySelector("header").offsetHeight  
    const footer = document.querySelector("footer").offsetHeight
     document.querySelector(".my-container").style.height =`${window.innerHeight-(header+footer)}px`
  }

это основной код, размещенный componentDidMount или useEffect если вы используете функциональный компонент

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...