0

我有一个spanwithfont-size:0来抑制空格:

<span style="font-size:0">
  <span>a</span>
  <span>b</span>
</span>

内部跨度继承父级的字体大小并消失,也是。使用font-size:100%也无济于事,因为它也是相对于父级的。

如何定义相对于祖父的字体大小?

4

4 回答 4

3

没有办法改变相对于高于纯 CSS 中另一个定义的字体大小的祖先的字体大小,即你不能。不过,有几种可能的解决方法:

  • 使用 JavaScript 计算正确的字体大小
  • 而不是font-size: 0在外部跨度上,float: left在内部跨度上使用
  • 更改 HTML 以删除空格
  • 只需为内部跨度使用设置的字体大小
于 2013-05-11T15:34:47.753 回答
2

您可以使用rem('root' 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 */

http://snook.ca/archives/html_and_css/font-size-with-rem

于 2013-05-11T15:42:19.223 回答
0

一种解决方法是使用非常小的百分比而不是零作为字体大小:http: //jsfiddle.net/David_Knowles/DzXZv/

span {font-size: 0.1%; }
span > span {font-size: 100000%;}
于 2013-05-11T15:30:06.840 回答
-1

您可以以像素为单位提供字体大小。

'http://jsfiddle.net/uqHgW/`
于 2013-05-11T15:41:04.863 回答