html - 如何在 CSS 中覆盖背景颜色?
问题描述
我给了我的身体这个属性
body {
background: linear-gradient(to bottom, rgba(233, 44, 3, 2), rgba(255, 0, 0, 0));
}
和一个 div 这个
div {
background: linear-gradient(to bottom, rgba(175, 113, 236, 0.8), rgba(175, 113, 236, 0.3));
}
问题是我的 div 中的项目(例如 h1 )具有主体背景颜色,即使 div 的其余部分具有其他颜色。
如何覆盖 div 中所有元素的主体颜色。
解决方案
这似乎有些不对劲,它应该继承父 div 的颜色,因此请检查您的元素是否正确嵌套,或者您的 div 是否正确包装了其他元素。如果问题依旧,还可以通过多种方式强制背景色继承:
可以使用CSS 中的inherit关键字来完成。您可以在 div 中的每个元素上使用此关键字。
不过,为了提供更多的理解,真正可能发生的是 div 中的元素没有设置背景颜色,因此它们可能会出现“透明”并在下面显示 body 元素颜色。
因此,如果 div 中的每个元素都相同,您可以将它们的背景颜色设置为要匹配的包含 div 的颜色。如果所有元素都是段落,则可以使用诸如 div > p 之类的选择器来完成此操作。
还要记住/注意外部 css 页面、页面级别和内联 css 权重,页面级别分别覆盖外部和内联覆盖页面级别。
推荐阅读
- javascript - 如何为 Angular 2+ 的本地存储设置超时?
- python - 带有无限循环的简单脚本会减慢计算机速度
- mysql - 加入 3 个表,其中 2 个表不相关
- ios - 使用 IQKeyBoardManager 时键盘 titleBarButton 的属性文本问题
- java - Java Tomcat RequestDumperFilter 日志记录问题
- javascript - 计算页面在 Qualtrics 中加载的次数
- java - 如何使用输入(java)从具有名称的文件中搜索信息?
- php - 如果 foreach 方法中的所有方法调用都返回 true,则 PHP 返回 true
- android - android 使用 Messenger 在服务和外部应用程序之间进行通信
- opengl - 如何在不成为 DRM 大师的情况下渲染到第二个屏幕?