博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
理解haslayout
阅读量:6970 次
发布时间:2019-06-27

本文共 1127 字,大约阅读时间需要 3 分钟。

定义:

       haslayout是IE7-浏览器的特有属性。hasLayout是一种只读属性,有两种状态:true或false。 当其为true时,代表该元素有自己的布局,否则代表该元素的布局继承于父元素。

  [注意]通过element.currentStyle.hasLayout可以得出当前元素的hasLayout情况

HTML标签:
默认触发hasLayout的有如下HTML标签:【1】html,body【2】table,tr,th,td【3】img【4】hr【5】input,button,select,textarea,fieldset【6】frameset,frame,iframe复制代码

CSS属性:

可以触发hasLayout的有如下CSS属性:【1】display:inline-block【2】height/width:除了auto【3】float:left/right【4】position:absolute【5】writing-mode(IE专有属性,设置文本的垂直显示):tb-rl【6】zoom(IE专有属性,设置或检索对象的缩放比例):除了normal**IE7专有的触发hasLayout的CSS属性**【1】min-height/max-height/min-width/max-width:除none【2】overflow\overflow-x\overflow-y:除visible【3】position:fixed复制代码

用途:

【1】解决IE7-浏览器下父级边框不阻止子级上下margin传递的bug

Document
复制代码

【2】配合display:inline让块元素模拟inline-block

Document
测试inline-block用 复制代码

【3】解决在IE7-浏览器下LI4px空隙bug(IE7-浏览器下li有高度或宽度或zoom:1,且仅包含内联元素,且内联元素被设置为display:block,li下会多出3px的垂直间距)

Document
  • 1231
  • 1232
复制代码

【4】触发浮动元素的父级的hasLayout,浮动元素会被layout元素自动包含,相当于IE7-浏览器下实现清浮动

Document
测试浮动
复制代码

转载地址:http://dcpsl.baihongyu.com/

你可能感兴趣的文章
将Java程序变成可执行文件的一个简单方法
查看>>
Elasticsearch学习总结(02-28 - 03-04)
查看>>
android页面跳转
查看>>
Java内存模型之happens-before
查看>>
LVM逻辑卷轴管理和磁盘配额实验
查看>>
ASP.Net定时任务执行
查看>>
约瑟夫环形链表问题、丢手帕问题、剑指offer圆圈中最后一个数问题
查看>>
微服务系列(七):将单体应用改造为微服务
查看>>
promise
查看>>
es6学习1: 模拟react Comopnent类的实现
查看>>
js继承问题
查看>>
201621123069 《Java程序设计》第十一周学习总结
查看>>
Java进阶篇(一)——接口、继承与多态
查看>>
linux下磁盘分区
查看>>
Hadoop:The Definitive Guid 总结 Chapter 7 MapReduce的类型与格式
查看>>
Spring boot ----RestTemplate学习笔记
查看>>
[LUOGU] P3128 [USACO15DEC]最大流Max Flow
查看>>
windows2003server下能安装的MSN
查看>>
Caffe将自己的文件生成lmdb
查看>>
C# 枚举中的位运算
查看>>