我有一个span
与font-size:0
打压空间:如何设置相对于父亲而不是父亲的字体大小?
<span style="font-size:0">
<span>a</span>
<span>b</span>
</span>
内跨度继承父的字体大小和消失了。使用font-size:100%
也没有帮助,因为它也是相对于父母。
如何定义相对于父亲的字体大小?
我有一个span
与font-size:0
打压空间:如何设置相对于父亲而不是父亲的字体大小?
<span style="font-size:0">
<span>a</span>
<span>b</span>
</span>
内跨度继承父的字体大小和消失了。使用font-size:100%
也没有帮助,因为它也是相对于父母。
如何定义相对于父亲的字体大小?
一个解决办法是使用一个非常小的比例,而不是零字体大小:http://jsfiddle.net/David_Knowles/DzXZv/
span {font-size: 0.1%; }
span > span {font-size: 100000%;}
没有办法的相应字号更改为祖先比另一个要求更高纯CSS中的字体大小,即你不能。有几种可能的解决方法,但:
font-size: 0
在外跨度,使用float: left
在内跨度内部的float:left似乎是'font-size:0'的另一种选择。 – ceving 2013-05-11 15:41:43
你可以使用rem
( '根' EMS)为单位的span
设置的font-size
相对于基本字体大小:
<span class="hideSpaces">
<span>a</span>
<span>b</span>
</span>
body { font-size: 16px; } /* <-- base font-size */
.hideSpaces { font-size: 0; }
.hideSpaces span { font-size: 1rem; } /* <-- sets font size equal to base font size */
兼容性是您正在参考的文章中所述的IE9 +(并且根据caniuse没有Opera Mini) – FelipeAls 2013-05-11 15:51:36
@FelipeAls如果这是一个问题,OP可以为旧版浏览器指定特定的字体大小:'.hideSpaces span {font-size: 16px的; font-size:1rem; }' – 2013-05-11 15:53:35
'rem'是root em,不是祖父母em。 – 2013-05-11 16:58:48
纯CSS,你可以'吨;为什么你把它设置为font-size:0? – 2013-05-11 15:25:13
@ExplosionPills看到第1行 – ceving 2013-05-11 15:28:04
_“我有一个字体大小跨度:0压制空间”_ - 我不认为这是一个好办法 - 无论如何 - 因为许多浏览器的最小字体大小在他们的不能被削弱的设置(我不知道他们是否愿意放弃仅包含空白的元素的规则)。 – CBroe 2013-05-11 15:41:49