课程
/前端开发
/HTML/CSS
/如何用CSS进行网页布局
测试了一下如果是float:left的话没有做到自适应 他会有一个宽度 并且吧left的重叠上 如果是right的话他会自适应 这样可行吗 会为后续编写留下什么隐患?
2015-06-27
源自:如何用CSS进行网页布局 5-3
正在回答
你这个代码我有试过,你在html代码<div class="right">right</div>中,试一下把代码改为<div class="right">rightrightrightrightrightrightrightrightrightrightrightright</div>这样,这里的right要足够多,然后你就会看见left这边会被挤下去了。。。
你的这个写法不对。你的右div没有设置一个颜色。如果你为他设置一个color:green的话你会发现绿色的宽度和里面文本的宽度相适应了。这显然是不行的。因为浮动之后元素会变成内联块状元素,宽度不会占据一整行,必须指定宽度。所以无法做到自适应屏幕宽度。这题的参考答案我认为是有问题的。
给你提供两种思路去解决:
第一种:让左边div脱离文本流,设置position:absolute。然后给右边的div设置margin-left
第二种:让右边的div脱离文本流,同样设置position:absolute,并制定它的left和top。给左边的div设置width
float:left设置元素向左浮动,其实这里是有起到效果的。
right float:left 是可以的
你只需要把下面这两块位置交换一下:
<div class="left">left</div>
<div class="right">right</div>
至于你说的,一个设置向左浮动,一个设置向右浮动。效果也是一样的。
譬如朝露
举报
用最简洁的案例教你布局的那些知识,这是前端工程师基本技能