我想更改 html 页面的字体/字体颜色/字体大小。我已经使用 String(contentsOfFile) 将 css 文件转换为字符串。我可以使用 regEx 或类似的东西来编辑 css 数据吗?这是 css 文件的示例
.calibre {
color: #000;
display: block;
font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
font-size: 1em;
margin-bottom: 0;
margin-left: 5pt;
margin-right: 5pt;
margin-top: 0;
padding-left: 0;
padding-right: 0;
text-align: justify
}
我还尝试使用 ESCssParser 将这个字符串(来自 Css 文件)转换为字典。但是,当我将该字典(更改字体大小后)转换为字符串时,格式不同。差异的一个示例是#idSelector 将变为“#idSelector”。我假设这些更改会影响 css 文件。我错了吗?
我可以采用任何其他方法来编辑 Css 文件吗? 谢谢!
最佳答案
如果您更改 html 中的一个类而不是尝试更改您的 css 中的许多条目会更好。 例如,如果您像这样布置 html:
<body>
<div id="wrapper" class="med">
<p class="calibre">Lorem Ipsum</p>
<!--rest of html-->
</div>
</body>
您可以在后端代码中更改 #wrapper
元素中的类,然后使用 css 确定页面的样式,如下所示:
.calibre {
color: #000;
display: block;
font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
font-size: 1em;
margin-bottom: 0;
margin-left: 5pt;
margin-right: 5pt;
margin-top: 0;
padding-left: 0;
padding-right: 0;
text-align: justify
}
#wrapper.small .calibre{
font-size: 0.8em;
}
#wrapper.large .calibre{
font-size: 1.4em;
}
在上面的示例中,没有特定的 med 类,因此将使用默认值 (1em)。如果您要使包装器具有 small 或 large 类而不是 med,则 calibre 仍将具有所有相同的属性,除了 font-size
将更改为 0.8em
小的情况下,1.4em
大的情况下。
Here's用 jquery 代替后端代码的示例。
关于html - 在不使用 javascript 的情况下在 swift/obj c 中编辑 css 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31536652/