<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
p{
border:solid red 5px;
float:left;
}
</style>
</head>
<body>
<p>我是一个block元素</p>
</body>
</html>
如代码所示,由于我为p规定了float:left,p的width由100%变成了随文字内容自动调整,这是什么原因呢?在我没有规定元素的宽度的条件下,float难道会改变元素的宽度吗?谢谢大家抽空解答!
p
标签本身是块级元素,前后会带有换行符,所以会独占一行,在没有设置宽度的时候会撑满整行,也就是100%的父元素宽度。浮动会让元素会生成一个块级框,同时元素在没有设定明确宽度时,元素会变得尽可能窄,类似word的文字环绕效果。