如何检查浏览器是否支持CSS通用兄弟选择器〜

时间:2019-06-11 12:44:37

标签: javascript jquery css-selectors cross-browser

如果浏览器支持CSS常规同级选择器~,如何使用Javascript(jQuery)进行测试?

示例:

#toggled:checked ~ #sidebar {
    display: block;
}

该CSS代码在IE 8,Firefox 3-,Safari 3.1-中不起作用,因此在这些情况下,我需要应用Javascript替代方法来显示#sidebar块。

1 个答案:

答案 0 :(得分:1)

@epascarello的注释正确,为什么不使用JS?

例如,在JS中(未经测试-使用jQuery):

let isRuleApplied = (selector, keyApplied, valueApplied) => {
  let element = $(selector);
  return element && element.css(keyApplied) === valueApplied;
};

console.log(isRuleApplied('#toggled:checked ~ #sidebar', 'display', 'block'));

或者仅使用style节点的getElementById属性,或使用Vanilla JS使用querySelector

对想法here表示敬意。