首页前端开发HTMLli inside-block在IE11换行无效的原因

li inside-block在IE11换行无效的原因

时间2024-01-22 18:21:04发布访客分类HTML浏览799
导读:收集整理的这篇文章主要介绍了li inside-block在IE11换行无效的原因,觉得挺不错的,现在分享给大家,也给大家做个参考。近日在做一个网页标签列表,要求不能换行,一开始以为比较容易,三两下就把代码写完了,并且在Firefox和Ch...
收集整理的这篇文章主要介绍了li inside-block在IE11换行无效的原因,觉得挺不错的,现在分享给大家,也给大家做个参考。近日在做一个网页标签列表,要求不能换行,一开始以为比较容易,三两下就把代码写完了,并且在Firefox和Chrome浏览器测试通过,不过,在IE11一看,却出人意料的没有达到预期效果,li inside-block 在IE11里竟然无效!照样换行!

li inside-block在IE11照样换行?

li inside-block 在IE11照样换行!为何无效?难道代码还要hack一下IE11?但我看别人网站里的写法并没有hack IE11。

其实代码挺简单,在Chrome和Firefox浏览器完全达到预期效果。

css核心代码如下:

ul li{
        display:inline-block;
        padding:3px 4px 3px 4px;
        margin:3px 3px 3px 0px;
}
    

使用 display:inline-block 可设置 li 列举不换行。

htML核心代码如下:

ul>
        li>
    tag1/li>
        li>
    tag2/li>
        li>
    tag3/li>
    /ul>
    

出来的效果应该是这样:

使用 display:inline-block 可设置 li 列举不换行

而不是这样:

无 display:inline-block 时 li 列举换行

在京东网页html代码找到IE11无效的原因

上述问题困扰了我好几天,一度放弃了 li 列举的这种代码方式而采用 div 的写法,但是还是心有不甘,因为 li 的写法才是正道,且代码更加简洁。

今天在京东网浏览手机,侧栏的标签列表吸引了我,通过查看其网页html源码,发现它也是用 li 列举使用 display:inline-block 来实现的。

京东的标签列表

我决意一定要从京东的这张网页上找到同时适用IE11的标签列表代码。

一刻不能再等了,立即动手。

在本地搭建的调试环境新建一html文件,把京东网页的html源码复制过来,接着采用“排除法”逐步删减代码,直至最后只剩下这个标签列举的DIV。

通过一段时间的代码删减工作,最后剩下的代码越来越少,答案也应该越来越明朗了。

功夫不负有心人,最后终于找到了答案!困扰多天的问题终于得以解决了!

原来是网页 head> /head> 里需要加入这句:

meta http-equiv="X-UA-Compatible" content="IE=Edge">

这句话的意思是,该网页不使用IE兼容性视图。

IE兼容性视图是使用低版本的IE浏览器来渲染网页,以免网页布局产生错乱,但现在我们明白了,兼容性视图会抹杀某些样式,使网页某些区块的布局不能达到预期效果。因此,在设计网页的时候,我们应该告诉IE浏览器不要使用兼容性视图来渲染此网页。

以上就是li inside-block在IE11换行无效的原因的详细内容,更多请关注其它相关文章!

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!

IE11

若转载请注明出处: li inside-block在IE11换行无效的原因
本文地址: https://pptw.com/jishu/583219.html
【H5开发工具】2017最好用的10种HTML5应用开发工具推荐 \9和\0可能hack IE11\IE9\IE8无效原因详解

游客 回复需填写必要信息