<div >
<span id="a"></span>
<div id="b"></div>
</div>
alert(document.getElementById('a').offsetWidth); //结果0
alert(document.getElementById('b').offsetWidth); //结果500
如果width有继承性,<span>的宽为什么是0?
如果width没有继承性,<div>的宽为什么是500?
该说html标签具有继承性还是css样式具有继承性?
span是行内元素,div是块级元素,块级元素默认继承,但行内元素只会根据元素内容来设定宽度,如果你想行内元素也继承宽度,可以设CSS display: block;
这和CSS的继承是无关的
因为div是块级元素,它默认就是有高度和宽度的,且默认情况下就是占用一行的宽度
但是span是内联元素,本身不具有宽度,除非你用css强制转换它的显示是block,否则任何对它的宽度设置都是无效的。
CSS具有继承性 , 别如你外面有个大的div ,然后里面有个小的 ,外面的div的text-align:center
那么里面的默认就是center,
怎么说呢 。 span和div不一样啊。 两个不同的标记怎么继承 ? div是块元素, span是行内元素,当然不会继承div的width属性, 你再在里面写个ul li标签试试 , 结果也是0. 不同标签是不会继承的 !!!
相信看了这些你该明白了 , 采纳一下吧, 打这么多字也不容易!