Html 为什么<;p>;浮动后<;ul>;从一条新路线开始?

Html 为什么<;p>;浮动后<;ul>;从一条新路线开始?,html,css,Html,Css,我是CSS新手,从W3学校学到了一个案例(http://www.w3schools.com/css/tryit.asp?filename=trycss_float5). 在本例中,元素是浮动的,接下来的元素应该像我所想的那样围绕它,但是它从一个新行开始。为什么不围绕浮动?而且,当我删除li{display:inline;}时,它在FireFox和Chrome中的显示似乎没有什么不同。你能给我解释一下吗?谢谢。为什么不呢?根据定义,一个开始一个新段落,这意味着一个新行。你在问“我关上门后为什么关门

我是CSS新手,从W3学校学到了一个案例(http://www.w3schools.com/css/tryit.asp?filename=trycss_float5). 在本例中,
元素是浮动的,接下来的
元素应该像我所想的那样围绕它,但是它从一个新行开始。为什么
不围绕浮动
?而且,当我删除
li{display:inline;}
时,它在FireFox和Chrome中的显示似乎没有什么不同。你能给我解释一下吗?谢谢。

为什么不呢?根据定义,一个
开始一个新段落,这意味着一个新行。你在问“我关上门后为什么关门?”

试着给你的p标签

display:block; //maybe unnecessary
overflow:auto; //very important for containing floats

这叫做筑巢。
标记中的任何内容都将……嗯……在它里面。如果你这样写:

    <p>
    <ul>
    //content
    </ul>
    </p>

    //内容


然后您的
将出现在段落标记中。正如marc所说,段落总是从定义上开始新的一行。

w3schools无论如何都不是一个好的学习来源。@SalmanA在我看来,它是一个很好的参考资料。特别是对于xsl/xpath,我不知道有什么更好的。无所谓。单击W3傻瓜,没有其他问题。根据定义,是的,但是上面有一个浮动元素,它应该向上移动,假装浮动元素不在那里(请参阅)。