1

我有这个代码

<html>
 <head>
  <style type="text/css">
   .frame                  {width: 50em; border: 1px solid black}
   .frame  label           {width: 20em; display: block; text-align:right; border: 1px solid green} 
   .frame label span       {width: 20em; display: block; font-size: .5em; border: 1px solid red; text-align: right}
  </style>
 </head>
 <body>
  <div class="frame">
   <label>
    Label
    <span>
     Span
    </span>
   </label>
  </div>
 </body>

红色<span>设置为20em。但它应该和绿色一样大<label>。不过,我想在红色部分保持较小的字体大小。不幸的是,即使它font-size是原来的一半,我也无法使用它40em来获得相同的尺寸。知道如何解决这个问题吗?

4

3 回答 3

2

px 不是一个选项,因为我确实希望保持设计“可扩展”。我刚刚发现,它适用于跨度的“宽度:100%”。

于 2009-01-27T15:46:57.837 回答
1

如果您没有为SPAN元素(或width:100%)声明宽度,它的属性display:block已经确保它的宽度是完整的可用宽度。

于 2009-01-27T16:00:43.440 回答
1

请注意,使用 em 是相对于包含 em 大小的。使用 px 或 pt 时,您的尺寸与屏幕分辨率相关。这就是为什么在span20em 标签内时红色的宽度为 20em。

于 2009-01-27T16:21:43.133 回答