我遇到了CSS冲突问题。 以下是详细信息:
我有一个搜索结果页面,其中的产品以网格格式显示。 CSS的网格搜索结果是“product-grid.css”,它包含在页面的标题中。在这个页面上,我有一个按钮,点击它时会以列表格式显示搜索结果。列表格式的css是“product-list.css”,它也包含在页面的head标签中。
现在,HTML人员在product-grid.css和product-list.css中使类的名称相同。
我想要的是,当我以网格样式查看页面时,只有product-grid.css应该应用于页面的各个部分。当我以列表格式查看页面时,应禁用product-grid.css,并且product-list.css应该应用于整个页面。
我尝试过使用jquery启用和禁用css文件,但可能是我做错了。此外,当页面加载时,两个css文件在head标签中都处于活动状态,并且由于类名称冲突,即使没有转移到其他视图,页面也会出现格式错误。
任何帮助我该怎么办?
答案 0 :(得分:4)
这是我的解决方案:
HTML人应该更改类名。目前的方法不可接受。
使用CSS文件加载变通办法和 abracadabras 只是因为某些人懒得分开页面的重要部分只是愚蠢 ,恕我直言。
答案 1 :(得分:2)
创建一个变量,以网格样式或列表样式决定页面正在查看的条件。在该变量的基础上使用下面的代码。
根据您的情况,您需要验证是否以网格样式查看页面然后添加网格 css喜欢
$('head').append('<link rel="stylesheet" type="text/css" href="product-grid.css.css">');
其他
$('head').append('<link rel="stylesheet" type="text/css" href="product-list.css">');