我有一個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