我被要求从计算机生成的HTML中删除不必要的标签,该HTML中有很多无用的标签(我只想保留颜色/strong/em信息)。我遇到了类似于以下HTML的内容:
bold not bold bold not bold
对于我来说(在chrome和firefox上),它将bold
文本显示为粗体,将not bold
文本显示为非粗体,我对此感到困惑。特别是,这使得我的任务变得更加复杂:我原以为我可以只删除没有颜色/strong/em信息的标签,所以将其更改为以下内容:
bold not bold bold not bold
但是现在,所有的文本都变成了粗体,而不是以前的样子。
我试图找出我可以在FONT
样式中放入什么来重现这种行为:
将Arial
替换为foo
保持了这种行为:
bold not bold bold not bold
将大小和字体切换后,行为发生了变化:
bold not bold bold not bold
两个值中的任何一个都没有什么作用:
bold not bold bold not bold
bold not bold bold not bold
有人能解释这种行为吗,或者至少告诉我应该查找哪些样式来取消外部样式?
我想我找到了我问题的答案,在font css属性文档页面上。它说:
(我强调)
再往下一点:
所以设置
font: 20pt arial
等同于设置font-style: normal;font-variant: normal;font-weight: normal;font-stretch: normal;font-size: 20pt;line-height: normal;font-family: arial
特别是,
font-weight
从bold
(或其他值)重置为normal
。所以为了解决我根本问题,我应该寻找没有指定字重的
font
标签。P.S.
font: arial 20pt
没有这种行为的原因是因为这不是font
的允许值,所以它被忽略:而在
font: arial 20pt
中,字体族并不是最后一个指定的值。