首頁 >web前端 >css教學 >怎麼利用純CSS實現頁面換膚? CSS實現換膚法

怎麼利用純CSS實現頁面換膚? CSS實現換膚法

云罗郡主
云罗郡主轉載
2018-10-11 15:13:142971瀏覽

這篇文章帶給大家的內容是關於怎麼利用純CSS實現頁面換膚? CSS實現換膚方法,有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。

怎麼利用純CSS實現頁面換膚? CSS實現換膚法

1.同類型的屬性要寫在同一個樣式裡面。
例如:background-size和background要在同一個樣式裡面,具體看下文程式碼。

2.關於偽類的使用
:after和:before,是在某個元素下新生成的元素,可以想像成是這個元素的兄弟元素。元素偽類別繼承這個元素的所有屬性及樣式,也可以單獨設定樣式。 :after和:before偽類一定含有content屬性。

3.:target偽類
:target偽類是個冷門的偽類,它必須配合錨點使用,效果是如果該錨點被選中,這個錨點渲染:target偽類定義的樣式。

4.陰影的使用
無論是text-shadow或box-shadow都可以設定多陰影,程式碼裡面有用例。

5.z-index屬性
此屬性只有定位為相對定位和固定定位的元素有z-index屬性,即position:relative/absolute。

HTML程式碼:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <link rel="stylesheet" href="css/style.css" />
    </head>
    <body>
        <img  class="bg bg1" id="bg1" src="img/1.jpg"/ alt="怎麼利用純CSS實現頁面換膚? CSS實現換膚法" >
        <img  class="bg bg2" id="bg2" src="img/2.jpg"/ alt="怎麼利用純CSS實現頁面換膚? CSS實現換膚法" >
        <img  class="bg bg3" id="bg3" src="img/3.jpg"/ alt="怎麼利用純CSS實現頁面換膚? CSS實現換膚法" >
        <div class="father">
            <a href="#bg1">背景一</a>
            <a href="#bg2">背景二</a>
            <a href="#bg3">背景三</a>
        </div>
    </body> 
</html>

css程式碼:

*{
    margin: 0;
    padding: 0;
}
html,body{
    height: 100%;
    overflow: hidden;
}
img{
    position: absolute;
    height: 100%;
    width: 100%;
}
.father{
    position: absolute;
    z-index: 99;
    width: 550px;
    top: 40%;
    left: 50%;
    transform: translate(-50%,-50%);
}
a{  
    cursor: pointer;
    position: absolute;
    text-align: center;
    text-decoration: none;
    width: 150px;
    height: 200px;
    float: left;
    margin-right: 50px;
    line-height: 200px;
    border-radius: 20px;
}
a:nth-child(1){
    background: lightblue;
    left: 0px;
}
a:nth-child(2){
    background: lightcoral;
    left: 200px;
}
a:nth-child(3){
    background: #cec;
    left: 400px;
}
a:after{
    content: &#39;&#39;;
    width: 125px;
    height: 125px;
    border: 3px solid white;
    position: absolute;
    top: -60px;
    left: 9px;
    opacity: 0.7;
    border-radius: 50%;
}
/*background-size必须和background在同一个样式元素内设置样式*/
a:nth-child(1):after{
    background: url(../img/1.jpg);
    background-size: 80%;
}
a:nth-child(2):after{
    background: url(../img/2.jpg);
    background-size: 80%;
}
a:nth-child(3):after{
    background: url(../img/3.jpg);
    background-size: 80%;
}
a:hover:after{
    opacity: 0.9;
}
a:hover{
    color: white;
    font-family: "微软雅黑";
    /*多阴影,用的不多,冷门小知识*/
    text-shadow: 0 0 3px blue,
                 0 0 9px darkturquoise,
                 0 0 15px lightcoral;
}
/*:target伪类必须配合锚点使用,效果是锚点被选中时的样式*/
img:target{
    z-index: 30;
}
/*:not伪类*/
img:not(:target){
    z-index: 0;
}

最後的效果大家自己試試看吧,注意我的頁面是用圖片做背景,背景圖的引入連結和自己的文件結構有關,url記得改。

如果你能看到最後,再分享一個很常用的知識:
父元素裡面的子元素浮動,使父元素出現高度塌陷的時候,我們一般都會給父元素添加:after偽類,設定清除浮動,附上我的萬用清除法。

萬能清除法

父元素:after{
    content: "";/*有时会用content:"."*/
    clear:both;
    display:block;
    height:0;
    overflow:hidden;
    visibility:hidden;
}

以上就是對怎麼利用純CSS實現頁面換膚? CSS實現換膚方法的全部介紹,如果您想了解更多有關CSS影片教學,請關注PHP中文網。


以上是怎麼利用純CSS實現頁面換膚? CSS實現換膚法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:qdfuns.com。如有侵權,請聯絡admin@php.cn刪除