我的HTML页面包含一个名为"main"的id的div,我在我的HTML页面中包含另一个HTML页面,其中包含一个具有相同id("main")的div.我需要在我的HTML页面的id("main")附加一个名称空间.
我包括来自其他网站的页眉,页脚以及从我的网站到该HTML页面的内容.如果其他网站使用与我的网站使用相同的ID,则会发生冲突.
在这个HTML页面中包含两个css文件.如果它们都包含具有不同样式的相同类,则存在问题.
我需要将我的css文件应用于我的代码,另一个应用于剩余的代码.任何人都能解决我的问题吗?
小智 1
到目前为止,我同意每个人的观点,因为没有原生 CSS 命名空间功能,并且如果您有控制(或愿望/能力)编辑 HTML,那么这是最好的方法。
自动化该过程的一种方法是编写一个脚本(PERL、PHP、.NET 等)来解析您引入的 HTML,并用修改后的版本替换任何现有的 ID 或类。
即<tag id="theID" class="theClass anotherClass"> 变成 <tag id="NAMESPACEtheID" class="NAMESPACEtheClass NAMESPACEanotherClass">
您可以使用一些创造性的正则表达式来完成此任务,但如果也需要修改 Javascript 代码,则会变得更加棘手。
就性能而言,这将是一个很大的打击,具体取决于文件的大小,您可能希望缓存结果,或重写原始文件。
如果您决定走这条路,请告诉我,这个想法实际上听起来有点有趣,可以在我的工具箱中占有一席之地!