左侧自适应宽度的左右布局的实现
左侧自适应宽度的一行两列布局的实现,左列宽度自适应,右列宽度保持不变。
HTML的写法是:
<div id="main">
<div id="left"><p>左列</p></div>
<div id="right"><p>右列</p></div>
</div>
现在加CSS,要实现的效果是mian是可变的,right层宽度为200px,并且固定不变,要让left的宽度随main的变化而变化。CSS的写法是:
#main{width:100%;background:#ccc}
#left{width:100%;margin-left:-200px;float:left;background:red}
#right{width:200px;float:right;background:green}
基本上达到所要的效果了,#left的宽度设置为100%,加个margin-left:-200px;让它向左移动200PX,好让它腾出200PX的空间塞进right层。但有一个问题,左列被移动的那200PX隐藏了,看不到里面的东西。所以还必须增加一个DIV来辅助。
修改了一下,HTML代码,变成:
程序代码
<div id="main">
<div id="left">
<div id="innerLeft"><p>左列</p></div>
</div>
<div id="right"><p>右列</p></div>
</div>
现在要让innerLeft把左边被隐藏的部分弄出来,所以得再加个margin-left:200px,修改后的CSS代码如下:
程序代码
#main{width:500px;background:#ccc}
#left{width:100%;margin-left:-200px;float:left;background:red}
#innerLeft{margin-left:200px;}
#right{width:200px;float:right;background:green}
演示:
HTML代码
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]
还有更简单的方法,至于为什么网上很少有人用,我也在论证。
HTML代码
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]
很少用的那个方法,自适应宽度的那个层里面不能clear掉float的属性。
估计是因为此吧!
评论

React 18的并发渲染确实是个重大改进,我们在项目中已经升级使用,性能提升明显!