首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >IE6不支持min和max-heigt的解决办法

IE6不支持min和max-heigt的解决办法

作者头像
李洋博客
发布2021-06-15 16:15:59
发布2021-06-15 16:15:59
6380
举报
文章被收录于专栏:李洋博客李洋博客

先来解决下min-heigt的bug,布局过的人都知道CSS的最小高度min-height是个很有用的属性,它可以让很短的内容也有一个很合适的高度,使页面显得美观。但很可惜IE6不支持这一属性。怎么办呢?我们可以用另外一种方法让IE6也有最小高度min-height属性的效果。

众所周知,如果内容超过元素的高度,那么IE6是会自动增加元素的高度,即使你明确的定义了元素的高度。我们可以利用IE6的这个bug来让IE6也有最小高度min-height属性的效果。具体代码如下:

代码语言:javascript
复制
height:auto !important;height:500px;min-height:500px;

解释:

1、由于IE6对!important的解释存在bug,所以它只识别height:500px这一句,超过500px后,IE6自身会增加盒子的高度;

2、IE7和其他标准浏览器三句都能识别,虽然定义height:500px,但我们又有了height:auto !important,所以超过500px也能自动增加盒子的高度。

max-heigt的bug比较麻烦,有2种解决方法,先看jQuery方法:

代码语言:javascript
复制
if($.browser.msie&&($.browser.version === "6.0")){$(".entry").each(Function()
{if($(this)[0].scrollHeight>500)$(this)

CSS解决方法:

代码语言:javascript
复制
.css({"height":"500px","overflow":"hidden"});});}

原理:

在IE6中可以通过设定height来达到max-height的效果. 循环所有要加max-height属性的DOM元素,判断他的scrollHeight大于你要设置的最大高度如果超过了就通过设置height为最大高度,我这里使用的是[0],获取的是的DOM对象,而不是jQuery对象。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-08-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档