【发布时间】:2016-09-14 12:55:33
【问题描述】:
如果我有父 div 和子 div,并且我在父 div 上设置了 text-decoration:underline,这将适用于子 div 的文本内容。但是,如果我将子 div 设置为 position:absolute 或 position:fixed,则不再继承文本装饰。
我查看了规范,但没有看到任何描述这一点的内容。还有大多数地方,例如MDN,将text-decoration 和text-decoration-line 描述为不继承,这让我想知道它为什么会起作用。也就是说,这种行为似乎在所有浏览器中都是一致的,所以我认为我遗漏了一些东西。
查看下面的代码sn-p,您可以在其中使用按钮更改子div的位置css:
var positions = ['static','relative','fixed', 'absolute']
for(idx in positions){
$('#buttons').append($('<input/>').prop('type','button').prop('value',positions[idx]))
}
$('input').click(function(){
$('#child').css('position',this.value);
})
#parent{
text-decoration:underline;
}
#buttons{
position:absolute;
top:30px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="parent">
<div id="child">
Sample
</div>
</div>
<div id="buttons"/>
【问题讨论】:
标签: html css inheritance text-decorations