html - 使用 Shell 脚本更改 CSS 值 - Unix

标签 html css shell unix

是否可以通过 unix 中的 sh 脚本更改 CSS 中的元素值?如果是这样,这将如何完成?

目标:我有一个带有多个 div 框的 html 站点,这些 div 框根据警报状态着色,例如.. 红色、黄色、绿色。

我有 HTML 站点的自动刷新功能,所以我想做的就是能够向我当前的 sh 脚本添加一行,以根据结果更改 css 以显示警报状态。

我正在考虑按照下面的方式使用“sed”,但它需要特定于元素,而不仅仅是将所有红色更改为蓝色。

cat test.css | sed -e 's/RED/BLUE/' > test.css

最佳答案

为您的元素指定一个 ID,并在 CSS 中为该 ID 添加一行。然后,使用 sed 更改该行。

在 HTML 中说元素看起来像

<element id="box123" ... / >

在 CSS 中,这会得到它的颜色:

#box123 { color: #000000; }

然后使用 sed 通过更改 CSS 来更改颜色:

$ sed -i 's/^#box123 { color: #000000; }/^#box123 { color: #0000ff; }/g' cssfile

或更短但使用高级 sed 方法:

$ sed -i 's/^#box123\(.*\)#000000/^#box123\1#0000ff/g' cssfile

关于html - 使用 Shell 脚本更改 CSS 值 - Unix,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10923913/

相关文章:

html - 使用@font-face 将文本绘制到 <canvas> 第一次不起作用

html - 使图像在其他图像下方对齐

css - 编译和维护特定于ie的样式表

html - 什么格式化上下文适用于不创建自己的元素?

shell - 如何捕获 shell 管道中的错误代码?

python - 为什么只有在管道传输 python 脚本的输出时才会出现 unicode 错误?

html - 为什么这个 div 没有背景?

javascript - 导航栏品牌标志问题

html - 元素在重新加载之间上下跳动的问题(带有 float : right;) 的 header

linux - --proof=* 意思是shellscript