CSS属性探秘系列(五):min-width


一、基本含义
min-width 属性为给定元素设置最小宽度。它可以阻止 width 属性的应用值小于 min-width 的值。min-width 的值会同时覆盖 max-width 和 width。

二、可取值
常用百分比、固定px|em|ex等,其他属性值如max-content,min-content兼容性很不好。

div{min-width:100em;}

div{min-width:800px;}

……

三、兼容性
IE7+,常用现代浏览器,关于IE6的兼容处理,建议使用js控制,IE6将逐渐退出前端舞台。

四、应用
常用在百分比宽度布局中,缩放浏览器窗口,以免窗口很小时影响页面的布局 美观。

相关属性:max-width,min-height,max-height

我们在做布局设计时,经常有这样的布局,两边或者一边是导航类工具栏 ,中间是内容区域。
 
但我们希望中间的内区域能够自动适应,随着不同的分辨率和浏览器的大小自动适应高度和宽度,以获得较好的显示效果。
 
我们假设中间的内容区域是个div,如果我们不明确设置它样式的width属性,它是可以自动适应的,按说这满足了要求。
 
但是当浏览器的宽度过小时,小到已经不能整齐的显示我们的内容,页面的显示就会混乱不堪。
 
这时我们可以为该内容div设置一个min-width,比如在css中:


复制代码
代码如下:

#content{
min-width:600px;
}

 这个属性的功能就像它的名字一样简单:最小宽度。该div还是自动适应宽度,但它多了个条件,当它自适应的宽度小于设置的最小宽度时,就会把该div的宽度设置为最小宽度,不再自动适应。
 
这个属性在firefox和ie7中是可以使用的,但在ie6中不支持,我们可以用下面这段代码代替:


复制代码
代码如下:

#content{
_width: expression(((document.compatMode && document.compatMode=='CSS1Compat')? document.documentElement.clientWidth : document.body.clientWidth) < 700? '600px' : 'auto');
}

 前面的这段:


复制代码
代码如下:

((document.compatMode && document.compatMode=='CSS1Compat')? document.documentElement.clientWidth : document.body.clientWidth) < 700

 只是个判定条件,判定页面body的宽度,这里的是,如果页面body的宽度小于700(这个要根据具体的页面来指定),就把content的宽度指定为600,否则就让它自适应宽度。
 
其实min-height也同理!


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3