为什么我的CSS规则在无意中改变了很多东西?

为什么我的CSS规则在无意中改变了很多东西?,css,wordpress,Css,Wordpress,为了改变“订阅”按钮的颜色,我通过编辑CSS插件添加了下面的CSS #mc#u embed_signup.按钮{ 背景颜色:灰色; 颜色:白色; } 这段代码实现了预期的目的,但也改变了我网站上的许多其他内容,包括但不限于:页眉、页脚、H1文本、H2文本等 为什么这段代码会造成如此大的破坏?这段特殊的CSS可能并没有破坏网站的其他部分 您的#mc#u embed_注册。按钮{}选择器很好#mc_embed_signup是包装MailChimp注册表单的div元素的id,。button是按钮的类

为了改变“订阅”按钮的颜色,我通过编辑CSS插件添加了下面的CSS

#mc#u embed_signup.按钮{
背景颜色:灰色;
颜色:白色;
}
这段代码实现了预期的目的,但也改变了我网站上的许多其他内容,包括但不限于:页眉、页脚、H1文本、H2文本等


为什么这段代码会造成如此大的破坏?

这段特殊的CSS可能并没有破坏网站的其他部分

您的
#mc#u embed_注册。按钮{}
选择器很好
#mc_embed_signup
是包装MailChimp注册表单的
div
元素的id,
。button
是按钮的类,您的选择器意味着“将以下样式应用于id为
mc_embed_signup>的元素中具有
button
类的任何内容”

但是,由于表单中只有一个按钮,并且它有自己的
id
,因此您也可以通过编写
#mc embedded subscribe{}
来完成同样的任务


在任何情况下,都可能是CSS中的另一个错误导致了站点其他样式的混乱。仔细查找任何未闭合的大括号或缺少的分号。

我还建议尝试更多地制定命名约定,并考虑工作流程。必须依靠一个ID来设计一个像.button这样模糊的类是一种糟糕的工作方式,因为你以后可能会想设计.button的样式来做一些其他的事情,并且无意中破坏了网站的其他部分。如果您需要将样式添加到.button,但它需要特定于该页面,那么您最好添加另一个类,称为更具体的类,以处理按钮的功能,即订阅按钮,然后改为样式

尽量避免使用ID进行样式设置,因为在以后进行编辑时,它确实不是很宽容


p、 美国。您是否解决了问题?

因为您针对的是容器中id为“#mc_embed_signup”的“.button”类的每个元素,因此任何带有“.button”类的元素都会受到影响-如果您的H1、H2等元素具有相同的类,则会受到影响。。。如果您只想以一个元素为目标,那么就给它自己的类或ID。如果给它一个ID,您必须确保它在DOM中是唯一的。这里讨论的按钮是侧边栏中的subscribe按钮:我以为.button是它的ID的一部分,但我想不是吗?(我为我的无知道歉。我是CSS的初学者)编辑:检查后,我看到“#mc#u embedded_signup”是id,“.button”是类。将CSS更改为
input#mc embedded subscribe{style}
,看看会发生什么:)代码不应该更改任何其他元素。我想真正的问题是,插件还有什么变化?也许有必要“检查元素”(右键单击菜单)这些东西中的一个,当它不应该改变的时候,看看发生了什么。这与任何类型的插件无关。我使用mailchimp的嵌入代码来嵌入注册表单。“仔细查找任何未闭合的大括号或缺少的分号。”我会这样做。谢谢这应该是一个评论,而不是回答。。。对不起,我还没有机会测试它。在接下来的几天里,我还有其他项目的截止日期,但我要在周末之前解决它。我会留下一个关于它是否有效的更新!