css p标签设定字体,p内的标签中的文字不遵循p的设定

来源:百度知道 编辑:UC知道 时间:2024/06/13 22:26:07
比如:<div class="ok">
<p>文字1……
<strong>文字3……</strong><a>文字4……</a>
文字5……
</p>
</div>

css: *{font-size:12px;}
.ok p{font-size:16px;}

问题:文字1和文字5遵循设置,是16px,可是p标签之下一旦出现了其它标签比如<strong>或是<a>或是<u>(文字3,文字4),它们所含的文字的大小却不遵循p标签的设置,又变回12px了。。可是它们都是p的下属啊!不会跟我全局的*设置有关系吧?不可能啊,因为.ok是更近的设置,是有css优先级的,再说谁还不设定个全局的默认字体?

我的临时解绝方法是:把p下所有应该出现的(如strong)标签全部都再设置一下,例:css: .ok p strong,.ok p a,.ok p u,.ok p ul{font-size:16px;}。
可是这样太麻烦了,因为你不知道文章中都会有什么格式,是不定的,比如或许还有<ol>,css中还都得预先想到并设好了不成?
主要问题是:p标签之下的标签不遵循p的设定,它本身是不是一个错误?或是哪里有什么不当的地方?

那是因为你*号用的不对,*号表示定义了所有的html标签,因此它也定义了a和strong标签,在你这里,你已经定义了这两个标签,根据就近原则,它们当然继承的是*号的属性。

要定义全局默认字体一般是定义body,或者定义html。

解决的办法是最好尽量不用*号,而是用多少标签定义多少,其他用默认的,这样修改起来也方便。一般主流网页设计都是这样做的。

那是因为你*号用的不对,*号表示定义了所有的html标签,因此它也定义了a和strong标签,在你这里,你已经定义了这两个标签,根据就近原则,它们当然继承的是*号的属性。

要定义全局默认字体一般是定义body,或者定义html。

解决的办法是最好尽量不用*号,而是用多少标签定义多少,其他用默认的,这样修改起来也方便。一般主流网页设计都是这样做的。

那是因为*号用的不对,*号表示定义了所有的html标签,因此它也定义了a和strong标签,在这里,已经定义了这两个标签,根据就近原则,它们当然继承的是*号的属性。

要定义全局默认字体一般是定义body,或者定义html。

解决的办法是最好尽量不用*号,而是用多少标签定义多少,其他用默认的,这样修改起来也方便。一般主流网页设计都是这样做的。

样式是有优先级的。你可以在浏览器里面按F12,然后用鼠标点击P标签,看看是表现出来的样式在哪儿?再去覆盖这个样式