我正在尝试将CSS样式应用于从Microsoft Word文档生成的某些HTML片段.Word生成的HTML相当残酷,并且包含许多内联样式.它是这样的:
<html>
<head></head>
<body>
<center>
<p class=MsoNormal><b style='mso-bidi-font-weight:normal'><span
style='font-size:12.0pt;line-height:115%;font-family:"Times New Roman"'>Title text goes here<o:p></o:p></span></b></p>
<p class=MsoNormal style='margin-left:18.0pt;line-height:150%'><span
style='font-size:12.0pt;line-height:150%;font-family:"Times New Roman"'>Content text goes here.<o:p></o:p></span></p>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
......而且非常简单,我想设置标题部分的第一个字母.它只需要更大和不同的字体.要做到这一点,我试图使用:first-letter选择器,有类似的东西:
p b span:first-letter {
font-size: 500px !important;
}
Run Code Online (Sandbox Code Playgroud)
但它似乎没有奏效.这是一个演示这个的小提琴:
任何想法有什么问题/如何正确地设置标题部分的第一个字母?我可以对标记进行微小的更改(比如在事物周围添加包装器div),尽管并非没有困难.
如何只使用CSS将UPPERCASE字母转换为小写和大写字母,如下所示?
来自: 这是一个例子句子.
收件人: 这是一个例句.
更新: 当我使用text-transform:capitalize; 结果仍然相同.
我需要大写各种html元素的第一个字母,如p,h2,h3,h4.
这个堆栈问题帮助了我,但它只针对p标签.如何定位多个标签呢?
如:
function change(charm) {
var string = eval(charm).toLowerCase(), change = "", newstring = string.split("."), tochange;
for (var i = 0; i < newstring.length; i++) {
tochange = newstring[i].trim().charAt(0);
newstring[i] = newstring[i].replace(tochange, tochange.toUpperCase());
}
change = newstring.join(" . ");
return change;
}
var text = change("document.getElementsByTagName('p, h2, h3, h4')[0].innerHTML");
document.getElementsByTagName("p, h2, h3, h4")[0].innerHTML = text;
Run Code Online (Sandbox Code Playgroud)
这不起作用,我在针对各种元素做错了吗?