CSS增加字体大小

xax*_*axa 9 css

我不是CSS的专家,但是有一项任务是增加网站的字体大小.该网站使用下载的CSS主题.我看到有一个文件main.css,其中包含字体的定义.在其他css文件中,使用百分比设置font-size.

但是,font-sizemain.css本身有102个匹配,因为它设置了所有可能的html元素及其组合的大小,如

 body { font-size: 13px; }
 h1 { font-size: 32px; }
 h1.smaller { font-size: 31px; }
 h2 { font-size: 26px; }
Run Code Online (Sandbox Code Playgroud)

等等.

我正在考虑编写一个脚本,它将提取font-size的值$1并替换它们$1+1.

有一段时间,可能有一个更优雅的解决方案?也许我可以用CSS本身重新定义字体大小?

cru*_*ush 8

我使用以下PHP脚本将所有font-size: [0-9]+px值转换为em:

<?php

$filename = "MyCss.css";

$css = file_get_contents($filename);

$css = preg_replace('/font-size\s*\:\s*([0-9]+)\s*px/ie', '"font-size: " . ($1/16) . "em"', $css);

file_put_contents($filename, $css);
Run Code Online (Sandbox Code Playgroud)

您上面的示例CSS变为:

body { font-size: 0.8125em; }
h1 { font-size: 2em; }
h1.smaller { font-size: 1.9375em; }
h2 { font-size: 1.625em; }
Run Code Online (Sandbox Code Playgroud)

然后我建议baseline在HTML元素上设置字体大小:

html { font-size: 16px; }
Run Code Online (Sandbox Code Playgroud)

然后,如果要全局影响页面上的所有字体大小,可以更改此单个值,并且使用em单位的所有字体都将缩放.

如果您愿意,也可以使用百分比,但em通常是首选.

(对不起,Ruby是我不知道的少数几种语言之一)