我有下面的CSS,我需要用JavaScript到CSS規則添加前綴使用javascript
h1
{
color: red;
}
.info
{
border: 1px dotted blue;
padding: 10px;
}
#rect
{
background: pink;
}
h2,
h3,
h4
{
font-weight: bold;
}
table td:last td
{
background: gainsboro;
}
處理字符串我怎樣才能前綴.page
添加到每個規則,以便在CSS不破?
我想這個結果
.page h1
{
color: red;
}
.page .info
{
border: 1px dotted blue;
padding: 10px;
}
...
現在,我尋找的壓痕解決它,但代碼失敗在這種情況下
h1
{
color: red;
}
然後與
.page h1
{
.page color: red;
}
結束
我也可以查找只有括號的行,但是這種情況會失敗
h1 { color: red; }
我不想建立自己的CSS解析器,我發現那些大多是處理應用到DOM元素,而不是字符串的CSS CSS。有沒有一個好的解析器,否則這可以實現嗎?
您需要解析它! –
這個討論在這種情況下可能會有所幫助: http://stackoverflow.com/questions/8302437/how-to-parse-and-extract-css-selectors-as-strings – CmajSmith
您應該看看返工工具套件(https://github.com/reworkcss/rework)。它解析和轉換,並可以處理字符串。試圖用正則表達式解析語言是一個糟糕的主意,這是相當完善的。正如你發現的那樣,你會想出一些你認爲可行的解決方案,然後在那之後你會發現一個你的「解決方案」破裂的案例。 – 2015-10-20 13:02:35