css+div 中出现的一个float问题

来源:百度知道 编辑:UC知道 时间:2024/09/24 13:15:21
<div class="head1" style="background-color:#999999">
<div style="margin:0pt auto;width:920px;text-align:letf">

<span style="float:right">狗狗大全|过生日的狗狗|待领养的狗狗|开心抽大奖|帮助|</span>
您好,欢迎来到狗狗网!【请登录】【免费注册】
</div>
</div>

<div class="head1" style="background-color:#999999">
<div style="margin:0pt auto;width:920px;text-align:letf">
您好,欢迎来到狗狗网!【请登录】【免费注册】
<span style="float:right">狗狗大全|过生日的狗狗|待领养的狗狗|开心抽大奖|帮助|</span>

</div>
</div>

为什么调换一行显示效果就不同能,下面的<span>的会出现在下一行?

第一段:
span右浮动的时候,会自动变成块元素“浮”在上面,所以它下面的文字就会上去和他一行,如果在span和文字中间加上清楚浮动的div
<div style="clear:both;"></div>
那么文字就会到下一行显示。
第二段:
文字在span前面,span右浮动的时候,会自动变成块元素,所以只能换行显示。除非在前面的文字也加上标签,给它浮动,两段文字才会在同一行显示。
<span style="float:right">您好,欢迎来到狗狗网!【请登录】【免费注册】</span>
<span style="float:right">狗狗大全|过生日的狗狗|待领养的狗狗|开心抽大奖|帮助|</span>

另外,由于你没有清除浮动,所以灰色背景并没有包住span
<div class="head1" style="background-color:#999999">
<div style="margin:0pt auto;width:920px;text-align:letf">
<span style="float:right">您好,欢迎来到狗狗网!【请登录】【免费注册】</span>
<span style="float:right">狗狗大全|过生日的狗狗|待领养的狗狗|开心抽大奖|帮助|</span>
<div style="clear:both;"></div>
</div>
</div>

把SPAN的上一个元素搞成浮动的应该就会在一行了.