可以使用以下CSS代码将p元素中的内容放入div容器中。
* {
margin: 0 0 0 0;
padding: 0 0 0 0
}
div.container {
width: 400px;
height: 121px;
border: 1px solid red;
position: absolute;
bottom: 0px;
left: 0px;
right: 0px;
top: 0px;
margin: auto;
}
div.box {
float: left;
}
div img {
margin: 0px;
padding: 0;
width: 121px;
height: 121px;
float: left;
}
div.description {
float: left;
border 1px solid red;
margin: 10px 50px;
}
<div class="container">
<div class="box">
<img src="images/set06.jpg" />
</div>
<div class="description">
<p>music mane: xxxxxxxx</p>
<p>author: yyyyyyyy</p>
<p>publication:20081001</p>
<p>language:english</p>
</div>
</div>
现在,我用span元素替换了p元素。
* {
margin: 0 0 0 0;
padding: 0 0 0 0
}
div.container {
width: 400px;
height: 121px;
border: 1px solid red;
position: absolute;
bottom: 0px;
left: 0px;
right: 0px;
top: 0px;
margin: auto;
}
div.box {
float: left;
}
div img {
margin: 0px;
padding: 0;
width: 121px;
height: 121px;
float: left;
}
div.description {
float: left;
border 1px solid red;
margin: 10px 50px;
}
<div class="container">
<div class="box">
<img src="images/set06.jpg" />
</div>
<div class="description">
<span>music mane: xxxxxxxx</span>
<span>author: yyyyyyyy</span>
<span>publication:20081001</span>
<span>language:english</span>
</div>
</div>
span中的所有内容都在div容器之外,在p元素中效果不同,如何使div容器中的span元素中的所有内容呢?
它工作在第一种情况下,而不是第二个原因是因为<p>
标签是display: block
默认和<span>
标签是display: inline
默认。块段落元素在其父级中每行显示一个,并且由于其父级是浮动的,因此它们仅占用必要的宽度。
但是,使用内联跨度标签时,它们会并排显示,并占用尽可能多的宽度,从而导致其父对象(描述div)比图像右侧的空间宽。因此,说明div将显示在图像下方。
要解决此问题,可以display: block
在span元素上进行设置。喜欢:
div.description span
{
display: block;
}
这是一个工作示例:https : //jsfiddle.net/uy8x9z4v/。但是,由于<p>
标签已经具有所需的块显示功能,因此,除非有充分的理由,否则我建议您使用它们而不是跨度。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句