<div class="clearfix elem"> <span class="label begin"> <div class="clearfix"> </span> <nav class="elem elem-red"> <span class="label begin"> <nav></span> <ul> <li>nav-item1</li> <li>nav-item2</li> <li>nav-item3</li> <li>nav-item4</li> <li>nav-item5</li> <li>nav-item6</li> </ul> <span class="label end"> </nav> </span> </nav> <div class="elem elem-red column"> <span class="label begin"> <div class="column"> </span> <section class="elem elem-orange"> <span class="label begin"> <section></span> <p>由于border-box貌似对inline-block无效所以左边设置25%右边设75%会是上下那样的不是左右的,所以我只好把右边设成73%可是这样两块好像又不挨着了...莫非是与border有关?</p> <span class="label end"> </section> </span> </section> <section class="elem elem-orange"> <span class="label begin"> <section></span> <p>一些内容</p> <span class="label end"> </section> </span> </section> <span class="label end"> </div> </span> </div> </div>
* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } .elem{ border:solid #6AC5AC 3px; position:relative; } .elem-red { border: solid #D64078 3px; } .elem-orange { border: solid #FDC72F 3px; } .elem-green { border: solid #96C02E 3px; } .label{ position:absolute; background-color:#6AC5AC; line-height:1em; padding:3px; } .elem-red > .label{ background-color:#D64078; } .elem-orange > .label{ background-color:#FDC72F; } .begin{ left:0; top:0; } .end{ right:0; bottom:0; } p{ margin:2em 0; display:block; } nav { display: inline-block; vertical-align: top; width: 25%; } .column { display: inline-block; vertical-align: top; width: 73%; }