sadr0b0t / babbler-robots

0 stars 1 forks source link

Механизм размещения элементов на рабочем экране #4

Closed sadr0b0t closed 7 years ago

sadr0b0t commented 7 years ago

Нужен нормальный лэйаут-менеджер, голый HTML+CSS уже запарили.

Нужно

Колонки еще можно худо-бедно сделать на CSS.

Со статус-баром начинаются приключения (никаких приключений - position: fixed и всё). Простой способ на CSS

style="position: absolute; bottom: 0" 

Если контент умещается в окно, то все норм - полоска прижата. Если же появляется вертикальный скролл, то полоска улетает наверх вместе с прокруткой.

Еще есть вариант сделать так, чтобы полоска была всегда внизу контента (стандартный футер на сайте), но он тоже не подходит, т.к. на экранах с прокруткой статус-бара просто не будет видно.

sadr0b0t commented 7 years ago

Исчерпывающий обзор по прижиманию футера к подвалу страницы - 4 способа. Проблема в том, что этот подвал не видно при наличии вертикальной прокрутки (для веб-страницы это ок, но не для статус-бара окна приложения).

Как с помощью CSS прижать footer к низу окна браузера http://dimox.name/press_footer_bottom_with_css

Чел задается ровно этим же вопросом, но внятного ответа не получил keeping div aligned to bottom of window on page scroll https://bytes.com/topic/html-css/answers/462071-keeping-div-aligned-bottom-window-page-scroll

получает ответ https://groups.google.com/forum/?hl=en#!topic/alt.html/RlBDk6-KHUY

  • The best technical solution is to position the copyright at the bottom of the viewport and give it a top margin large enough to satisfy your eye. Something like:
HTML:
<div class="copyright">
<p>Images, HTML, and CSS Copyright 2006 by Ramesh</p>
</div>
CSS:
div.copyright { position: relative ;/* Establish 'positioned' ancestor  */
                 text-align: center ; /* Center the contained text */
               }
div.copyright p {
                  color: black ;        /* Must specify colors */
                  background-color: white ;  /* otherwise transparent! */
                  position: fixed ;     /* position relative to window */
                  bottom: 0 ;           /*  against the window bottom */
                  left: 0 ;             /* Stretch to go clear */
                  right: 0 ;            /*  across viewport */

                  margin-bottom: 0 ;    /* Adjust to suit */
                  padding-top: 20px ;   /*  with a nice top padding */
                 }

Всего-то нужно было указать position: fixed вместо absolute, все работает отлично.

sadr0b0t commented 7 years ago

Так, есть еще MaterialUI BottomNavigation http://www.material-ui.com/#/components/bottom-navigation

Который, судя по названию, должен быть ровно для нижнего тулбара. Но он нифига не прижимается к нижней части окна (висит на нижней границе контента), а со скроллом - уезжает вниз. Какая-то бесполезная фигня, лень разбираться

sadr0b0t commented 7 years ago

Вот еще какой-то лэйаут менеджер https://github.com/kadirahq/meteor-react-layout https://github.com/kadirahq/blaze-layout https://voice.kadira.io/getting-started-with-meteor-1-3-and-react-15e071e41cd1#.tb502t6le

но что умеет вообще не понятно - ни скринов, ни демо, одни восторженные коменты

sadr0b0t commented 7 years ago

короче, красоту навел, пока достаточно https://github.com/1i7/babbler-robots/commit/ff4b302f5993f32e7b7bfb864a447b29a3829d67

sadr0b0t commented 7 years ago

A Complete Guide to Grid https://css-tricks.com/snippets/css/complete-guide-grid/

A Complete Guide to Flexbox https://css-tricks.com/snippets/css/a-guide-to-flexbox/