关于样式选择器:hover出现忽闪现象

Posted 星马豪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于样式选择器:hover出现忽闪现象相关的知识,希望对你有一定的参考价值。

有时候在做项目的时候会想给一个元素添加一个遮罩效果,然后鼠标划过去的时候,遮罩消失,一般最简单的方法就是使用样式选择器:hover,但是经历过才知道恶心,有种灯泡快要坏的感觉,闪瞎自己的眼睛,于是诞生了解决它的方法,代码如下(图片自己随便找几张,按照路径放进去就可以),开始....

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>:hover忽闪解决方法</title>
    <style>
        .col-banner{
            position: relative;
            overflow: hidden;
            transform:skewX(160deg);
            width:16.6667%;
            float:right;
            transform-origin:0 0;
        }
        .col-banner img{
            width: 100%;
        }
        .bannerDiv{
            width:100%;
            height: 100%;
            position: absolute;
            left: 0;
            top: 0;
            background: rgba(0,0,0,.6);
        }
    </style>
</head>
<body>
    <div class="col-banner">
        <div class="bannerDiv"></div>
        <img src="img/1.jpg">
    </div>
    <div class="col-banner">
        <div class="bannerDiv"></div>
        <img src="img/2.jpg">
    </div>
    <div class="col-banner">
        <div class="bannerDiv"></div>
        <img src="img/3.jpg">
    </div>
    <div class="col-banner">
        <div class="bannerDiv"></div>
        <img src="img/4.jpg">
    </div>
    <script>
        var oCol = document.querySelectorAll(‘.col-banner‘);
        var oBanner = document.querySelectorAll(‘.bannerDiv‘);
        for(var i=0; i<oCol.length; i++){
            oCol[i].index = i;
            oCol[i].onmouseover = function(){
                oBanner[this.index].style.display = ‘none‘;
            };
            oCol[i].onmouseout = function(){
                oBanner[this.index].style.display = ‘block‘;
            }
        }
    </script>
</body>
</html>

 

 

嗯,不错!

以上是关于关于样式选择器:hover出现忽闪现象的主要内容,如果未能解决你的问题,请参考以下文章

CSSCSS 复合选择器 ④ ( 链接伪类选择器 | a:link 默认样式 | a:visited 已访问样式 | a:hover 鼠标移动样式 | a:active 选定链接样式 )

hover样式失效的解决方法

CSS

前端随堂笔录3

选择器和权重

在DW,CSS样式中link,visited,hover,active这四个分别表示啥意思?