javascript - CSS 获取父元素属性

标签 javascript jquery html css

所以我刚刚遇到了这个问题。假设我有以下标记:

<article data-color='#123456'>
    <header>...</header>
    <a href='#'>Lorem ipsum</a>...
    ...
</article>

所以我有一个带有自定义颜色属性的元素。我想让标题将其作为背景颜色,并将链接作为颜色(颜色是随机生成的或用户定义的)。有没有办法仅靠 CSS 来做到这一点? (我知道 jQuery 可以毫无问题地执行此操作,但我希望尽可能保持美观,而不是单独使用 Javascript 进行样式设置。)

最佳答案

您可以在 CSS 中使用属性选择器:

article[data-color="#123456"] header {
    background-color: "#123456";
}

article[data-color="#123456"] a {
    color: "#123456";
}

但是,这假定您可以在 CSS 中枚举 data-color 属性。如果它是动态生成的并且可以取任何值,那么您不能在 CSS 中这样做——它没有变量或反向引用。

关于javascript - CSS 获取父元素属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24726434/

相关文章:

javascript - 使用 javascript 将 HTML 表格数据存储在数组中

javascript - 从 2018 年开始在 WebGL 中加载着色器?

javascript - 使用 jQuery 滚动一个 div

jquery - 在 jQuery 中启动延迟的更好方法?

jquery - 响应状态 200 正常,但使用 jquery 错误函数

html - 如何将 div 排列成两行三列,由偶数和奇数子元素分隔?

html - CSS 图像 Sprite 无法在 iPhone/iPad 上正确显示

javascript - 为什么使用javascript :void(0) instead of# in href?

javascript - 加载新的 html 页面时无法使用 javascript 变量

html - 定义列表(<dd><dt> 等)有哪些优点,什么时候应该使用它?