1. 程式人生 > >關於nth-child()偽類選擇器選取元素設定transform樣式但是無法通過hover改變transform的問題

關於nth-child()偽類選擇器選取元素設定transform樣式但是無法通過hover改變transform的問題

歡迎來到Altaba的部落格  2017年5月27日22:56:46

不多說,直接上問題程式碼

HTML部分:

<div class="photo-view box1">
        <img src="imagewall/images/full/10.jpg" alt=""/>
        <p>鴿子</p>
        <p>王陽陽畢設</p>
    </div>

    <div class="photo-view box2">
        <img src="imagewall/images/full/2.jpg" alt=""/>
        <p>院門</p>
        <p>王陽陽畢設</p>
    </div>

css部分:
 .photo-view:hover{
            box-shadow:15px 15px 20px rgba(50, 50, 50, 0.6);
            -webkit-transform:rotate(0deg) scale(1.20);
            -moz-transform:rotate(0deg) scale(1.20);
            transform:rotate(0deg) scale(1.20);
            color: tomato;
            z-index:2;
        }

        .photo-view:nth-child(1){
            top: 0px;
            left: 50px;
            -webkit-transform: rotate(30deg);
            -moz-transform: rotate(30deg);
            transform: rotate(30deg);
        }
上面的程式碼用瀏覽器開啟,會發現hover懸浮transform部分無法觸發,是兩種選擇器選擇物件不統一,預估計是hover懸浮

換作下面這box2重新獲取便可通過hover改變transform樣式

.photo-view:hover{
            box-shadow:15px 15px 20px rgba(50, 50, 50, 0.6);
            -webkit-transform:rotate(0deg) scale(1.20);
            -moz-transform:rotate(0deg) scale(1.20);
            transform:rotate(0deg) scale(1.20);
            color: tomato;
            z-index:2;
        }

        .photo-view:nth-child(1){
            top: 0px;
            left: 50px;
            -webkit-transform: rotate(30deg);
            -moz-transform: rotate(30deg);
            transform: rotate(30deg);
        }

        .box2{
            top: 0px;
            left: 350px;
            -webkit-transform: rotate(10deg);
            -moz-transform: rotate(10deg);
            transform: rotate(10deg);
        }
或者改變一下hover字首也可通過hover改變transform樣式
.photo-view:nth-child(1):hover{
            box-shadow:15px 15px 20px rgba(50, 50, 50, 0.6);
            -webkit-transform:rotate(0deg) scale(1.20);
            -moz-transform:rotate(0deg) scale(1.20);
            transform:rotate(0deg) scale(1.20);
            color: tomato;
            z-index:2;
        }

        .photo-view:nth-child(1){
            top: 0px;
            left: 50px;
            -webkit-transform: rotate(30deg);
            -moz-transform: rotate(30deg);
            transform: rotate(30deg);
        }


便能夠通過hover改變transform樣式。