Javascript 我可以防止CSS样式被覆盖吗?
我想对页面加载上的一些链接按钮应用CSS,但其中一个Javascript 我可以防止CSS样式被覆盖吗?,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我想对页面加载上的一些链接按钮应用CSS,但其中一个注销必须保持其样式,任何悬停或其他事件都不得更改其样式 LinkButton没有类,应用于所有链接按钮的css都是对标记执行的,如下所示: a { //style } a:hover { // style } 有可能吗?为什么不在所有要更改的链接按钮中添加一个类,而不将其添加到不想更改的链接按钮中呢 然后你可以打电话: $(".myClass").css("backgound-color", "blue"); 这会将类为myC
注销
必须保持其样式,任何悬停或其他事件都不得更改其样式
LinkButton没有类,应用于所有链接按钮的css都是对标记执行的,如下所示:
a
{
//style
}
a:hover
{
// style
}
有可能吗?为什么不在所有要更改的链接按钮中添加一个
类,而不将其添加到不想更改的链接按钮中呢
然后你可以打电话:
$(".myClass").css("backgound-color", "blue");
- 这会将类为
myClass
的每个元素的背景色更改为蓝色背景
或者,您可以向链接按钮添加一个全新的类,该按钮的类为myClass
:
$(".myClass").addClass("myExtraClass");
- 这将使链接按钮的
class
属性class=“myclass myExtraClass”
您应该使用
!重要信息
在css中,如:
a {
/* style */
background: #FFF !important;
}
a:hover {
/* style */
background: #FFF !important;
}
css根据定义是级联的,因此应用于标记的任何样式都将应用于这个特定的样式,除非覆盖它
您必须为所有其他按钮分配一个类,或者覆盖此特定按钮的所有默认属性
另外,不要忘记伪类:visted和:active。不,不能
您可以使用更具体的选择器(甚至是带有style属性的内联CSS),这样它们就不太可能被意外覆盖
您可以使用的(eugh)大锤!重要信息
,因此它们只会被另一个覆盖!重要
规则
但是,无法防止它们被重写。请避免使用!重要信息
,请尽可能。你会遇到许多恼人的问题和问题,从使用这个。我认为这是一个非常懒惰的黑客。
您要做的是将一个类附加到不希望被覆盖的链接中。类的优先级高于一般选择器(例如a
,p
,b
)。因此,如果将此类附加到链接,CSS将覆盖为a
设置的默认CSS
CSS:
HTML:
这里有把小提琴给你看。第二个链接附加了一个保留原始样式的类:看到您的代码发布后,会更清楚地了解您想要做什么。试试这个:
a {
text-decoration: none;
color: orange;
}
a:hover {
text-decoration: underline;
color: blue;
}
这将对所有应用默认样式。看看这是否会给你想要的结果。ID优先于类和默认元素样式。因此,如果您有一个要保持不变的元素,请相应地应用和标识特定元素并设置其样式。这还可以帮助您避免将类应用于多个元素。应用一个ID要比应用十二个类少。(只是一个夸张的例子。我不知道你有多少链接。)
希望这能有所帮助。只要创建另一个样式表并将其放在html头部样式表链接的末尾,就可以覆盖css
<head>
<link rel="stylesheet" href="location/location/first_stylesheet.css">
<link rel="stylesheet" href="location/location/revised_stylesheet.css">
</head>
然而,这并不是覆盖css的最有效的方法;我们最好通过简单地在元素中添加class属性来消除这种单独样式表的必要性。attr类将允许您修改基本的html元素、标记,并覆盖最后一层以“统领它们”。享受吧 您可以尝试添加!重要信息
在css行的末尾。不知道这是否有效。你应该添加!重要信息
在样式定义的末尾。所以不要对该元素应用任何其他样式。从技术上讲?不。但是如果你控制CSS,这真的不必要。只是更好地管理你的代码。我喜欢这个答案。它能让你摆脱通常的坏习惯,这种坏习惯现在起作用,但以后会引起问题。这(并不总是)是真的!!我正在使用prestashop,例如,在那里,我有单独的自动加载自定义css文件,有时我必须使用这些文件!重要的是,我不必编辑核心模板文件,这使得所有内容都更加透明和结构化。它可以永远使用,你只需要知道什么时候使用它!!
a {
text-decoration: none;
color: orange;
}
a:hover {
text-decoration: underline;
color: blue;
}
#lb1 {
color: black;
text-decoration: none;
}
#lb1:hover {
color: black;
text-decoration: none;
}
<head>
<link rel="stylesheet" href="location/location/first_stylesheet.css">
<link rel="stylesheet" href="location/location/revised_stylesheet.css">
</head>