[ CSS text-decoration プロパティから、子要素でオーバーライドできません]
text-decoration 仕様の状態:
子孫要素の 'text-decoration' プロパティは、先祖の装飾に影響を与えることはできません。
リンクされた質問に記載されているように、 text-decoration-skipは最新バージョンの Chrome でもFirefoxでもサポートされていません
これがあなたに受け入れられるかどうかはわかりませんが、以下の解決策は機能しないため、これが唯一の方法かもしれません:
<span>
<span class="strikethrough">Hello </span>
<a href="#">World!</a>
</span>
.strikethrough {
text-decoration: line-through;
}
span 要素をネストすることは有効です。 XHTMLでネストされたスパンタグはOKですか?
動作しません:
デフォルトでは、プロパティは子に継承されます。それを望まない場合は、オーバーライドしてください。
span > a {
text-decoration: none;
/* or perhaps
text-decoration: underline;
*/
}
これにより、span 要素の直接の子孫として表示されるすべてのアンカー要素に取り消し線が表示されなくなります。