我有一些像這樣的HTML:
<li>
Very
<span class="node-variable">high</span>
temperature
</li>
和
<li>
<span class="node-variable">high</span>
temperature
</li>
在第二個版本中,我想將其大寫,high所以它讀作High. 我不想大寫第一個實體。
所以我想:
Very high temperature
和
High temperature
我的想法是應用一些 CSS 來選擇 .node-variable,它是第一個孩子,但如果不是,則不是。這可能嗎?
uj5u.com熱心網友回復:
是的,你可以在純 CSS 中做到這一點。
使用 CSS 首字母偽元素似乎會拾取首字母,即使它在您的 span 元素中:
<!doctype html>
<html>
<head>
<style>
li::first-letter {
text-transform: uppercase;
}
</style>
</head>
<body>
<ul>
<li>
Very
<span class="node-variable">high</span> temperature
</li>
<li>
<span class="node-variable">high</span> temperature
</li>
</ul>
</body>
</html>
uj5u.com熱心網友回復:
如果它周圍沒有 html 標簽,你就不能這樣做。
CSS 根據 html 標簽而不是原始文本分配樣式。
我不認為有任何方法可以做到這一點。你可以這樣做,但使用 Javascript。
如果原始文本周圍有 html 標簽,您可以使用 cssfirst-child來實作您想要的效果,但如果您只有原始文本,則無法使用 css 做到那么簡單。
span:first-child{
text-transform: capitalize;
}
<li>
<span>Very</span>
<span class="node-variable">high</span>
temperature
</li>
<li>
<span class="node-variable">high</span>
temperature
</li>
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/416934.html
標籤:
下一篇:CSS在背景中重復顏色
