Html 铬中的假元素

Html 铬中的假元素,html,css,google-chrome,pseudo-element,Html,Css,Google Chrome,Pseudo Element,在我看来,Chrome并没有将“before”伪元素视为元素的一部分。更准确地说,我有CSS定义 .myclass:before{content:"A";} 和HTML代码 <a href="blah" class="myclass">B</a> 在Chrome中,结果是一个超链接“AB”,但实际上只有“B”是可点击的。在Firefox和Opera中,整个“AB”是一个链接,我对CSS标准的解读表明Chrome在这里是错误的 我认为这是Chrome的bug,对吗?

在我看来,Chrome并没有将“before”伪元素视为元素的一部分。更准确地说,我有CSS定义

.myclass:before{content:"A";}
和HTML代码

<a href="blah" class="myclass">B</a>

在Chrome中,结果是一个超链接“AB”,但实际上只有“B”是可点击的。在Firefox和Opera中,整个“AB”是一个链接,我对CSS标准的解读表明Chrome在这里是错误的


我认为这是Chrome的bug,对吗?是否有一个简单而干净的解决方法?

您似乎可以通过以下方法解决此问题:

.myclass {
    display: inline-block
}


看起来像是一个Chrome bug-Safari没有同样的问题。

该解决方案似乎有效,并且在其他浏览器中没有不良副作用(我检查了Opera、Firefox和IE)。非常感谢!