关于opacity属性的探究

关于opacity属性的探究


上问题!!

在前一段时间我朋友和我讨论到了opcaity的属性问题问题如下:

代码如下清重点关注opcaity

    <!-- css样式 -->
    <style>
        .boxfather {
            width: 500px;
            height: 500px;
            background-color: blue;
            text-align: center;
            padding: 100px;
            box-sizing: border-box;
            opacity: 0.7;
        }
        .boxson {
            width: 300px;
            height: 300px;
            background-color: green;
            padding: 100px;
            box-sizing: border-box;
        }
        .boxgrandson {
            width: 100px;
            height: 100px;
            background-color: yellow;

        }
    </style>

    <!-- html结构 -->

    <div class="boxfather">
        <div class="boxson">
            <div class="boxgrandson">
            </div>
        </div>
    </div>

可见我们只是对父级元素设置了透明度,子元素和孙子元素都没有设置但是效果却是【左未设置透明度,右设置为0.7】

  关于opacity属性的探究  关于opacity属性的探究

然后我们去查手册看opacity属性是否存在继承性

关于opacity属性的探究

这是w3school给的答案,链接:https://www.w3school.com.cn/cssref/pr_opacity.asp

关于opacity属性的探究

这是某鸟教程给的答案,连接:https://www.runoob.com/cssref/css3-pr-opacity.html

那么问题来了,我们明明就没有给子孙元素设置透明度为啥就成这样了呢?

 

提出质疑:w3school和菜鸟教程写错了??


于是我们开始探索到底怎么回事,【质疑权威】是非常好的精神,但是一定要有根据的提出于是我们引入了jQuery辅助一探究竟

  <script src="./jquery.min.js"></script>
    <script>
        $(document).ready(function(){
           var sonop = $(".boxson").css('opacity')
           var grandsonop = $(".boxgrandson").css('opacity')
           console.log(sonop,grandsonop);
        })
  </script>

有了jQuery老大哥的帮助我们看一下结果:

关于opacity属性的探究

????

上一篇:js 实现图片懒加载(延迟加载)


下一篇:css中让元素消失的方法