Ecco una base illustration del problema:corpo HTML è più piccolo rispetto ai suoi contenuti
<html><head><style type="text/css">
html {width: 100%; height: 100%; background: red;}
body {width: 100%; height: 100%; background: green;}
.leftbar, .rightbar {height: 100%; background: blue;}
.leftbar {float: left;}
.rightbar {float: right;}
table {width: 100px; height: 800px; background: black; color: white;
margin: 0 auto 0 auto;}
</style></head>
<body>
<ul class="leftbar"><li>one</li><li>two</li></ul>
<ul class="rightbar"><li>alpha</li><li>beta</li></ul>
<table><tbody><tr><td>blah blah</td></tr></tbody></table>
</body>
</html>
Possiamo subito vedere che le galleggiavano ul
elementi sono alto come la body
che li contiene, il problema è che il body
non è alto come lo table
che contiene.
Come è possibile che lo body
sia sufficientemente grande? In questo esempio, voglio che lo leftbar
e lo rightbar
scendano fino in fondo, fino a quando lo scorrimento lo consente, in modo da non poter mai vedere spazi vuoti al di sotto di essi.
_fsvo_ "lavoro". È miope pensare che solo perché lavorano per il tuo caso d'uso specifico, devono lavorare per tutti gli altri contesti in cui i tuoi contenuti saranno accessibili. –
Lavorano nel contesto necessario e le alternative * non *. – spraff
Non riflette bene sulla nostra comunità che sconsigliamo una risposta valida che potenzialmente risolva il problema dell'OP, semplicemente perché è fuori moda. Le tabelle sono difficili da mantenere e interrompono il flusso normale, ma rappresentano una soluzione intelligente a diversi problemi spinosi del layout, in particolare in un mondo pre-flexbox. (Come 'display: table;' su un normale elemento block-level.) – XML