这是html编码:
<div>
<section class="aboutus">
<div>Some content 1</div>
<div>Some more 1</div>
</section>
<section class="tripinfo">
<div>Some content 2</div>
<div>Some more 2</div>
</section>
</div>
我希望并排显示html部分。 当我这样做时,它有效:
div {float: left;}
div section {width: 50%; float: left;}
但是当我尝试将每个指定为一个单独的大小时,它不会:
div {
float: left;
}
section .aboutus{
float: left;
width: 80%;
}
section .tripinfo{
float: left;
width: 20%
}
如你所见。在第一个例子中,我在同一个代码块中将这两个部分都设为50%。但是,只要我在不同的类中指定每个on的大小,它就会搞砸了。 所以,如果你们中的任何人能够帮助我,那就太棒了。
答案 0 :(得分:2)
尝试使用Flexbox而不是浮动。
#container{
display: flex;
border: 1px solid #333;
}
#container section {
padding: 10px;
}
.aboutus{
background: #CCC;
width: 80%;
}
.tripinfo {
background: #DDD;
width: 20%;
}
&#13;
<div id="container">
<section class="aboutus">
<div>Some content 1</div>
<div>Some more 1</div>
</section>
<section class="tripinfo">
<div>Some content 2</div>
<div>Some more 2</div>
<div>Some more 2</div>
<div>Some more 2</div>
<div>Some more 2</div>
<div>Some more 2</div>
</section>
</div>
&#13;
答案 1 :(得分:0)
使用display: flex
而不是float
,这将更容易,代码更少。
你的HTML和CSS应该是:
.flex {
display: flex;
}
.aboutus {
width: 80%;
background: grey;
}
tripinfo {
width: 20%;
}
&#13;
<div class="flex">
<section class="aboutus">
<div>Some content 1</div>
<div>Some more 1</div>
</section>
<section class="tripinfo">
<div>Some content 2</div>
<div>Some more 2</div>
</section>
</div>
&#13;
答案 2 :(得分:0)
将此属性添加到div元素
display:inline;
如果它不起作用,则从div中删除float:left并将float:left添加到第一部分并显示:内联到两个部分
答案 3 :(得分:0)
通过好的建议看到一些答案,但没有人真正指出你的例子究竟出了什么问题。
您不需要div {float: left;}
。它适用于页面上的每个div并导致一些时髦的行为。
CSS选择器中的空格表示后代,因此选择器section .class
正在应用于后代的任何.class
一个section
。如果您希望它应用于section
和 .class
的元素,请删除空格,如下所示:section.class
浮动需要clear
秒。在每个浮动元素级别之后,您需要包含clear: both;
以确保之后的元素仍然可以正确显示。通过执行::after
伪元素可以更轻松地实现这一点,因此您不必在页面上实际放置另一个元素以进行清除。
更新的例子:
div.float-container::after {
clear: both;
}
section.aboutus{
float: left;
width: 80%;
}
section.tripinfo{
float: left;
width: 20%
}
&#13;
<div class="float-container">
<section class="aboutus">
<div>Some content 1</div>
<div>Some more 1</div>
</section>
<section class="tripinfo">
<div>Some content 2</div>
<div>Some more 2</div>
</section>
</div>
&#13;
display: flex
几乎在所有情况下都会让事情变得更轻松,但它并不总是答案。我真的觉得有时float
只是一种更简洁,更简洁的方法来实现简单的结果。