是否有用于大写字母/字母/单词的CSS伪选择器?我希望我所有的首都都小一点,所有其他角色都相同。资本不一定是句子(或单词)的第一个字符,也不是反过来。
或许还有另一种方法可以在CSS中找到这些字符?有诀窍?我喜欢技巧。
答案 0 :(得分:3)
嗯,支持不良的first-letter选择器,但这不是你想要的。
你当然也可以用PHP预先解析你的HTML,将所有上限包装在<span class="capital"></span>
标签中,但这是一个黑客攻击。
当然,你总是可以拔出魔法jQuery兔子并在文档加载时改变你的DOM以包含跨度。那也是一个黑客。你喜欢黑客吗?
让我们看看还有哪个出现了魔术: - )
答案 1 :(得分:1)
我认为这不可能。
最好只用带有类的span来包装大写字母,并使用它来设置它们的样式。
答案 2 :(得分:1)
使用CSS无法做到这一点。
您可以使用Javascript检查文本中的所有字符是否为大写(例如,使用if (yourtext == yourtext.toUpperCase())
),然后在其中包含<span>
包含CSS的样式。
或围绕这些方面的事情:
function wrapCaps() {
var text = document.getElementById("my_text").value;
for(i=0; i < text.length; i++) {
if(text[i].charCodeAt(text[i]) >= 65 && text[i].charCodeAt(text[i]) <= 90)
wrapNode(text[i], 'span');
}
}
我没有尝试过(也许有人有时间用这个创建一个jsfiddle?),你可能需要使用replaceNode
或类似的东西。 charCodeAt
方法只查找大写字母,请注意不会包含特殊希腊大写字母之类的unicode字符。
您现在只需要使用以下内容设置样式:
#my_text span {
font-size: 10px;
}