标签颜色覆盖问题
今天有一个需求是在一个大页面中,双击某一行,弹出修改界面(用一个div块嵌套这个修改界面。)
使用方式:
1、在父窗口框架内用top.layer.open方式打开的子窗口
打开的子窗口为一个空白的画面容器,需要自己画出自己的页面。
言归正传:
1、在新建的修改页面中,使用css选择器,更改样式(使用id,或者类选择器,这样当其他页面使用该页面时就不会影响这里的设置)
这里插播一个小坑:
CSS 优先规则3:优先级关系:内联样式 > ID 选择器 > 类选择器 = 属性选择器 = 伪类选择器 > 标签选择器 = 伪元素选择器
// CSS
<style>
#content-id {
color: red;
}
.content-class {
color: blue;
}
div {
color: grey;
}
<style>
// HTML代码
<html>
<div class="content-class" id="content-id" style="color: black"></div>
<html>
结果依然为 black
3、我这个页面中,大页面采用nth-child()伪类选择器,Table表格奇偶数行定义样式为蓝黑 ,样式就为文章的第一张图,但是在我新建的修改页面中,直接就被渲染为蓝黑色了
哪怕就是设置了内联样式,发现还是被大页面渲染为黑色
进行CSS重复样式设置,同样为黑色,新建的画面依然会被大页面的伪类选择器设置背景为黑色。
解决方式:使用!important 提升指定样式规则的应用优先权。
此时,问题解决,修改页面背景为我们自己设置的颜色。
总结一下:这个需求学到
1、父页面带id打开子页面。
2、css选择器存在等级区分
3、大页面的选择器样式会覆盖内里的样式
4、通过!imporant语法解决选择器优先级问题