Растянуть до конца странице
1)Подскажите, как по феншую растянуть div до конца странице.
Делаю стандартный каркас, шапка, див слева, див контент, див справа, и ноги, но контента у меня не много, одна табличка которая занимает пол странице, из за этого то ноги в середине болтаются, то боковые div до низа не доходят, как их принудительно растянуть ? прочитал про flex только запутался, пишут что для каркаса не желательно использовать :-? 2) если выставляю maintbl width:60%; то почему правый див переноситься ниже контента становиться? .maintbl{ border: 1px solid grey; background: #e4e5e6; float:left; width:59%; } .BodyLeft{ float:left; background:green; width:20%; height: 280px; } .BodyRight{ display: flex; //height: 280px; height: calc(85vh - 40px); float:left; background:red; width:20%; } |
pokk,
html где? |
Я думал так будет понятно, вот накидал как примерно все выглядит.
<style> .maintbl{ border: 1px solid grey; background: #e4e5e6; float:left; width:59%; } .BodyLeft{ float:left; background:green; width:20%; height: 280px; } .BodyRight{ display: flex; //height: 280px; height: calc(85vh - 40px); float:left; background:red; width:20%; } .Clear{ clear:both; background:yellow; } .bottom{ background:gray; } </style> <html> <div class="BodyLeft">22222222</div> <div class="maintbl">Тут небольшой контент хочуть сделать в виде ленты вниз, а по бокам пустой фон</div> <div class="BodyRight">3333333333</div> <div class="Clear">44444</div> <div class="bottom">7609098098</div> </html> |
pokk,
<!DOCTYPE html> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style> html{ height:100%; width:100%; } html *{ margin:0; padding:0; } body{ width:100%; height:100%; display:flex; flex-wrap:wrap; } .maintbl{ border:1px solid grey; box-sizing:border-box; background:#e4e5e6; flex:1; min-height:calc(100% - 4em); } .BodyLeft{ background:#008000; width:20%; } .BodyRight{ background:#F00; width:20%; } .Clear{ height:2em; width:100%; background:#FF0; } .bottom{ height:2em; width:100%; background:#808080; } </style> </head> <body> <div class="BodyLeft">22222222</div> <div class="maintbl">Тут небольшой контент хочуть сделать в виде ленты вниз, а по бокам пустой фон</div> <div class="BodyRight">3333333333</div> <div class="Clear">44444</div> <div class="bottom">7609098098</div> </body> </html> |
height: 100%; не работает?
|
j0hnik, неа пробовал.
рони, а для чего первые 2-3 стиля ? |
pokk,
с ними лучше :) |
Да я уже понял, а разве
height:100%; width:100%; у html не по дефолту ? и как html *{ звездочку понимать? |
Цитата:
|
Цитата:
|
А подскажите как быть в случае увеличение масштаба, таблица внутри среднего блока выходит за границы его и из за этого, правый блок перепрыгивает вниз.
|
А как сделать без min-height:calc(100% - 4em); в maintbl
.maintbl{ border:1px solid grey; box-sizing:border-box; background:#e4e5e6; flex:1; min-height:calc(100% - 4em); } Дело в том что дальше я добавил шапку и кучу горизонтальных линий(рамок) по 1-6px и из за этого страница вниз уезжает. |
pokk,
делайте минимальный макет, так может быстрее кто-то подскажет ... |
Убрал Clear добавил шапку и потом вручную крутил
min-height:calc(100% - 6.7em); подбирал 6.7 PS: как сделать что бы была кнопка посмотреть? <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style> html{ height:100%; width:100%; } html *{ margin:0; padding:0; } body{ width:100%; height:100%; display:flex; flex-wrap:wrap; } .maintbl{ border:1px solid grey; box-sizing:border-box; background:#e4e5e6; flex:1; min-height:calc(100% - 6.7em); } .BodyLeft{ background:#008000; width:20%; } .BodyRight{ background:#F00; width:20%; } .bottom { padding-top:12px; height:2em; border-top: 1px solid white; border-bottom: 6px solid #000; width:100%; background:#e4e5e6; text-align:center; } .container{ text-align:center; } header { background: #e4e5e6; border-top: 6px solid #000; border-bottom: 1px solid #BBBCBD; /* height:35px; */ height:3em; width:100%; } .Border1{ border-top: 1px solid white; border-bottom: 1px solid #BBBCBD; } </style> </head> <header> <div class="container"> <h1>Заголовок</h1> </div> </header> <body> <div class="BodyLeft Border1">22222222</div> <div class="maintbl Border1">Тут небольшой контент хочуть сделать в виде ленты вниз, а по бокам пустой фон</div> <div class="BodyRight Border1">3333333333</div> <div class="bottom">7609098098</div> </body> </html> |
pokk,
[HTML run][/HTML] о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting |
pokk,
строка 81 => 74 |
pokk,
<html> <head> <title>Untitled</title> <meta charset="utf-8"> <style> html, body{ height:100%; width:100%; } html *{ margin:0; padding:0; } .content{ width:100%; min-height:calc(100% - 6.7em); display:flex; } .maintbl{ border:1px solid grey; box-sizing:border-box; background:#e4e5e6; height: auto; flex:1; } .BodyLeft{ background:#008000; width:20%; } .BodyRight{ background:#F00; width:20%; } .bottom { padding-top:12px; height:2em; border-top: 1px solid white; border-bottom: 6px solid #000; width:100%; background:#e4e5e6; text-align:center; } .container{ text-align:center; } header { background: #e4e5e6; border-top: 6px solid #000; border-bottom: 1px solid #BBBCBD; /* height:35px; */ height:3em; width:100%; } .Border1{ border-top: 1px solid white; border-bottom: 1px solid #BBBCBD; } td{ height: 90px; border: 1px solid #0000CD } </style> </head> <body> <header> <div class="container"> <h1>Заголовок</h1> </div> </header> <div class="content"> <div class="BodyLeft Border1">22222222</div> <div class="maintbl Border1">Тут небольшой контент хочуть сделать в виде ленты вниз, а по бокам пустой фон<table style="width: 100%; border-size: 1px; border-color: #CC0000; border-collapse: collapse"> <tr> <td>table</td> <td>table</td> <td>table</td> </tr> <tr> <td>table</td> <td>table</td> <td>table</td> </tr> <tr> <td>table</td> <td>table</td> <td>table</td> </tr> <tr> <td>table</td> <td>table</td> <td>table</td> </tr> <tr> <td>table</td> <td>table</td> <td>table</td> </tr> <tr> <td>table</td> <td>table</td> <td>table</td> </tr> <tr> <td>table</td> <td>table</td> <td>table</td> </tr> <tr> <td>table</td> <td>table</td> <td>table</td> </tr> <tr> <td>table</td> <td>table</td> <td>table</td> </tr> </table></div> <div class="BodyRight Border1">3333333333</div> </div> <div class="bottom">7609098098</div> </body> </html> |
рони, так вот и каким образом тут
min-height:calc(100% - 6.7em); 6.7 получается ? и как его каждый раз не подпирать, мне надо что бы при открытии сайта не было прокрутки вниз |
pokk,
ждите специалистов по css |
Часовой пояс GMT +3, время: 03:24. |