首先,我想要实现黑色背景: 而不是黑色背景我得到粗体字母。
HTML CODE
<span id="border"><h3>Title</h3>
<p>Lorem Ipsum</p>
</span>
CSS代码
#border {
background-color: #000000;
}
的jsfiddle
答案 0 :(得分:8)
此粗体实际上来自您的h3
标记作为默认样式而非边框css。
至于为什么你的边框没有出现......那是因为span是一个内联元素,不会扩展以包含块级h3
标记。
您可以通过将display: inline-block;
添加为h3
标记的样式来查看此内容。
仅供参考你不应该在一个范围内拥有h3,因为它不是有效的html。我建议使用div
代码替代span
。
答案 1 :(得分:2)
两个问题:
粗体是<h3>
标记的默认样式。
您的黑色背景未显示,因为它位于<span>
元素上。
范围默认为display:inline
,这意味着我们无法包含块元素。 h3
是一个块元素。
要解决此问题,请使用div
代替span
,或将范围设置为display:block
。
答案 2 :(得分:1)
如果情况略有不同,您可能已经看到了背景颜色。
考虑以下HTML:
<span id="border">
Some opening text...
<h3>Title</h3>
<p>Lorem Ipsum</p>
and some closing text.
</span>
我刚刚在span
元素中添加了一些文字。
对于CSS,只需添加一种颜色即可看到文字:
#border {
color: green;
background-color: #000000;
}
演示于:http://jsfiddle.net/audetwebdesign/M8Exf/
这里发生的是CSS引擎打开内联块(span
)并应用#border
的格式。
但是,在找到块级h3
后,CSS引擎会关闭span
元素(内部)并开始一个新的块级别框,类似于p
元素。
在找到span
中的剩余文本后,CSS引擎会启动一个新的匿名内联框并应用#border
中的相同样式。
此过程是CSS框和可视化格式模型的一部分。