高手解决IE中盒子模型滚动条有妙招

2024-06-24 11:27:02阅读量:36 字体:

其实不要看我们平时使用IE浏览器都是简简单单的,打开浏览器,输入所需网址,就完事了。可是当面对,稍微比较深奥的问题时,大家就搔头抓耳了。就比如关于浏览器盒子模型的滚动条的问题。下面,小编就此问题进行详细的讲述。

先看图:

高手解决IE中盒子模型滚动条有妙招
浏览器盒子模型的滚动条

那么我们来看容器高度:

假如内容固定,表格也固定,那么你可能设置成固定高度,但是假如表格下还有内容,还正好取出来的数据不够表格的最大行数据(比如每页10行,结果一共才4行),那么会出现一大块空白,所以可能更多的情况下你还是设置的是动态高度,其实就是100%啦。

既然是100%,那么为什么出现了竖滚条呢?首先,只有在IE下才出现这个滚动条,那么显然,肯定又是盒子模型对高宽的理解不同了。

假如真实内容高度现在是500Px,因为横滚条(假定有12px)的出现,W3C可能认为高度就是512px了,那么事情就解决了,容器是512,内容是512。

可是IE显然不这么计算,你现在内容高度是500px,那么我的100%算出来的就是500px,现在出现了横滚条怎么办?

1,它必须在容器里出现(本例中就是外围的DIV);

2,只要一出现,必须会把实际内容追加成512px;

这样就出现了上面的结果,计算的高度和实际高度不符,于是滚动条就出现了。这时候来解决问题:

开始认为,既然这是不应该出现的滚动条,那么就让它不显示不结了?于是给容器加style:overflow-y:hidden;

结果一运行,不对,512px的内容被你强制改成了500px还不让滚动,必然有12px的内容无法显示,因为滚动条的级别比较高,所以不能显示的其实就是内容区的最后那12px,显然不能这么做

最后没办法,只有先判断它是否IE,(IE8引擎已经有所改变,那就判断IE7吧),然后再插入一行(具体几行根据浏览器实际情况定,上述数字都是假的,为了描述方便),在这个时候,再让滚动条不出现,这样问题就解决了,

在这种情况下,IE7事实上确实有部分内容无法显示,但无法显示的是你插入的无意义的空行。

插入的代码你应该明白,是这种:

《![if IE 7]》

《p》 《/p》

《![endif]》

看效果:


浏览器盒子模型的滚动条

好了,相信很多的朋友是看不懂的。只要是涉及到代码的问题,很多人就开始头晕了。大家不用担心,这种事情,还是让iE高手来解决。要是真的有兴趣,就认真学习一下吧!

推荐阅读

  • 怎么把小红书的视频提取出来

    怎么把小红书的视频提取出来

    小红书的视频可以通过保存视频的方式提取到手机上,小红书通过保存提取视频的具体步骤如下: 怎么把小红书的视频提取出来 1、打开小红书app,然后选择需要提取的视频。 2、选择需要提取的视频后,选择右上...

    阅读: 1860

  • 抖音可以注销了重新注册吗

    抖音可以注销了重新注册吗

    抖音注销了可以重新注册,抖音账号注销后,一般需要两个星期过后才可以重新注册账号。具体的操作方式如下: 抖音可以注销了重新注册吗 1、打开抖音,点击进入我”的界面。 2、进入我&rdquo...

    阅读: 847

  • 美团异地怎么点外卖给别人

    美团异地怎么点外卖给别人

    美团异地可以通过修改收货地址的方法来给别人点外卖,修改收货地址给别人点外卖的具体操作步骤如下: 美团异地怎么点外卖给别人 1、打开美团app,在首页上方点击外卖进入外卖界面。 2、进入外卖界面后,点...

    阅读: 879

  • 支付宝悄悄话怎么知道对方看没看

    支付宝悄悄话怎么知道对方看没看

    支付宝的悄悄话是阅后即焚的消息,如果发送悄悄话过去,悄悄话消失了就证明对方已看。具体操作方法如下: 支付宝悄悄话怎么知道对方看没看 1、打开手机支付宝app,点击消息”,再点击右上角人像。...

    阅读: 1667

  • 健康码代领怎么弄

    健康码代领怎么弄

    在家里的老人孩子都不会操作手机的时候,可以代领健康码,在微信的防疫健康码中即可进行代领。具体操作方法如下: 健康码代领怎么弄 1、打开手机微信app,点击我”。 2、点击服务&rdquo...

    阅读: 871

  • 倒数日怎么删除不用的事件

    倒数日怎么删除不用的事件

    倒数日是一款倒计时软件,添加的事件可以进行删除,进入事件编辑即可删除。具体操作方法如下: 倒数日怎么删除不用的事件 1、打开手机倒数日app,点击需要删除的事件,进入事件页面。 2、点击右上角笔的标...

    阅读: 829