html - 相邻兄弟和一般兄弟选择器未正确选择
问题描述
我尝试使用相邻兄弟选择器和通用兄弟选择器为锚标记之后的段落着色。当我使用选择器时,第一个元素(故事)没有被设置样式。所有前面的元素的样式都正确。我想知道为什么会这样?
html代码如下:
<a class="mylink" href="stories.html" target="_blank" style="color: blue"><img src="abc.png" alt="Image Not Available" height="80" /></a>
<p>Stories</p>
<a class="mylink" href="movies.html" target="_blank" style="color : blue"><img src="abc.png" alt="Image Not Available" height="80" /></a>
<p>Movies</p>
<a class="mylink" href="tables.html" target="_blank" style="color: blue"><img src="abc.png" alt="Image Not Available" height="80" /></a>
<p>Tables</p>
<a class="mylink" href="login.html" target="_blank" style="color: blue"><img src="abc.png" alt="Image Not Available" height="80" /></a>
<p>Login Page</p>
相邻兄弟选择器:
a + p {
color: green;
}
通用兄弟选择器:
a ~ p {
color: green;
}
解决方案
这可能是一个特异性问题。选择器正在工作,请参见下面的代码段。您的样式可能会被您定义的另一种样式覆盖。在您的浏览器检查器中,检查<p>
元素,如果您看到color: green;
带有删除线的元素,则表示它已被覆盖。一些浏览器检查器甚至会告诉您哪个规则覆盖了它。无论如何,!important
如果您确实找不到特异性问题,请尝试添加。
a + p {
color: green;
}
<a class="mylink" href="stories.html" target="_blank" style="color: blue"><img src="abc.png" alt="Image Not Available" height="80"/></a><p>Stories</p>
<a class="mylink" href="movies.html" target="_blank" style="color : blue" ><img src="abc.png" alt="Image Not Available" height="80" /></a><p>Movies</p>
<a class="mylink" href="tables.html" target="_blank" style="color: blue"><img src="abc.png" alt="Image Not Available" height="80"/></a><p>Tables</p>
<a class="mylink" href="login.html" target="_blank" style="color: blue"><img src="abc.png" alt="Image Not Available" height="80"/></a> <p>Login Page</p>
推荐阅读
- reactjs - Chrome Devtools 未显示 Cookie 的 @ 符号
- java - 如何为 vsCode 代码生成设置符号
- reactjs - 返回 Google 距离矩阵 API 调用的结果
- r - 用于创建多个条形图的数据争论
- server - 无法初始化服务器:无法连接:连接被拒绝。Google Colab 上的 YOLO
- ios - 为具有等宽标签的水平 StackView 添加分隔视图
- docker - traefik 配置总是以休息室的错误网关结束
- python - 如何使用 Jenkins 为 Django settings.py 设置环境变量
- android - “org.json.JSONException:在字符 0 处输入结束”
- clang - 在 Mac OS 上使用 AVR-GCC 编译时引发 Clang 错误