我已经从找到的样本中收集了以下内容,并设法让一些东西运行良好。我使用的是 Chrome,但我的示例无法在 FireFox 或 IE 中运行。
我正在尝试创建 3 个并排的 100% 高度和 30 奇数百分比宽度的 div。当内容超过其高度时,div 应该有一个滚动条。
所以,除了一些与 float div 相关的边距问题,我主要有这个。但是,它不适用于 Firefox 和 Internet Explorer 那么是什么阻止了我的布局跨浏览器?
次要问题。我怎样才能在页面上平均分布 div?目前我有一个间隔 div。但必须有更好的方法。
http://jsfiddle.net/valamas/m68xchko/
html,body{
height:100%;
margin:0;
padding:0;
}
.content{
display:table;
width:100%;
border-spacing:10px;
border-collapse:separate;
background:#A36;
height:100%;
}
.Col
{
float: left;
border-radius:5px;
background:#fff;
width:31%;
overflow: auto;
overflow-x:hidden;
height:100%;
}
.spacer
{
float: left;
border-radius:5px;
background:#ccc;
width:2%;
overflow: auto;
overflow-x:hidden;
height:100%;
}
.clearfix
{
display:block;
clear: both;
float:none;
}
HTML
<div class="content">
<div class="Col">search</div>
<div class="spacer"></div>
<div class="Col"></div>
<div class="spacer"></div>
<div class="Col">
Testing scrolling<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
Testing scrolling<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
Testing scrolling<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
Testing scrolling<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
Testing scrolling<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
Testing scrolling<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
Testing scrolling<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
Testing scrolling<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
Testing scrolling<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
Testing scrolling<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
Testing scrolling<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
Testing scrolling<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
Testing scrolling<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
Testing scrolling<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
Testing scrolling<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
Testing scrolling<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
Testing scrolling<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
Testing scrolling<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
Testing scrolling<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
</div>
<div class="clearfix"></div>
</div>
最佳答案
你应该只使用 HTML 标记来语义结构化内容,而不是为了样式/布局目的使用额外的标记,那是为了 CSS。我建议如下:
HTML
<div class="col col1">
test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br> test<br>
</div>
<div class="col col2"></div>
<div class="col col3"></div>
CSS
html, body{
height:100%;
margin:0;
padding:0;
}
body {
overflow: auto; /* clear float */
}
.col {
float: left;
width: 30%;
height: 100%;
overflow: auto;
}
.col1 { background-color: red; }
.col2 { background-color: green; }
.col3 { background-color: blue; }
http://codepen.io/anon/pen/qAGFd
我还建议您观看 lynda.com 提供的优秀 CSS 教程。他们很棒!
关于html - 3 个并排的 100% 高度和滚动布局的 div 不是跨浏览器的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26579988/