将 CSS“#”(ID)替换为 .(类)

2024-01-08

我有一个像这样的CSS字符串

    #xyz{
          color:#ee2ee2;
      }
     .abc{
        background-color:#FFFFFF;
        border-color:1px solid #eee;
     }
    .def #xyz{
       border-color:1px solid #ddd;
    }


我需要更换#xyz(或任何其他 ID 选择器).xyz不改变color: #ee2ee2(或任何其他颜色选择器)。 基本的java脚本代码就可以了

我尝试过一些正则表达式,但在一些情况下失败了

cssText.replace(/#([a-zA-Z])/gm, '.$1');

这将取代# with .仅当有一个{在同一行之后的某个地方。

cssText = `
  #xyz
  {
     color:#ee2ee2;
  }
  .abc{
     background-color:#FFFFFF;
     border-color:1px solid #eee;
  }
  .def #xyz{
     border-color:1px solid #ddd;
  }
  body{background-color:#fff000;}.ig26{padding:20px;}.icts{width:200px;height:200px;padding:10px;} 
`;
console.log(cssText.replace(/#([a-zA-Z])(?=[^}]*{)/g, '.$1'));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 CSS“#”(ID)替换为 .(类) 的相关文章

随机推荐