最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

前端實現(xiàn)界面切換主題代碼示例

 更新時間:2025年02月26日 10:39:43   作者:江戶川亮仔  
這篇文章主要介紹了前端實現(xiàn)界面切換主題的相關(guān)資料,文中介紹了兩種方法,通過link標簽的rel屬性和通過變量設(shè)置,前者適用于確定的主題樣式切換,后者則適用于在拾色器中任意選擇顏色更換主題的情況,需要的朋友可以參考下

 樣式切換主題

  • 常用的主題切換實現(xiàn)方式之一,就是通過 link 標簽的 rel 屬性來實現(xiàn)的
  • 當 rel 標簽的值是 alternate,就代表該樣式是可以替換的
  • title 屬性要加就全加上或者全不加,因為 title 會導(dǎo)致系統(tǒng)直接識別成樣式文件,意思就是如果兩個樣式文件,第一個沒有加該屬性,第二個加了該屬性,系統(tǒng)會直接使用有該屬性的樣式進行載入
  • 假如此時頁面有三個樣式文件,分別是:default.css、dark.css、light.css
  • 可以通過激活可替換樣式即可實現(xiàn)主題的切換,適合確定的主題樣式之間切換
/* default.css */
body {
    background-color: white;
}

/* dark.css */
body {
    background-color: black;
}

/* light.css */
body {
    background-color: lightcyan;
}
<!DOCTYPE html>
<html lang="en" class="dark">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>主題切換方案一</title>
    <link type="text/css" href="css/default.css" rel="external nofollow"  rel="stylesheet" title="default">
    <link type="text/css" href="css/dark.css" rel="external nofollow"  rel="stylesheet alternate" title="dark">
    <link type="text/css" href="css/light.css" rel="external nofollow"  rel="stylesheet alternate" title="light">
</head>

<body>
    <select name="主題" onchange="changeTheme(this.value)">
        <option value="default">默認</option>
        <option value="dark">夜晚</option>
        <option value="light">白天</option>
    </select>
</body>

<script src="static/js/jquery.min.js"></script>
<script>
    function changeTheme(theme) {
        $('link').attr('disabled', true)
        $(`link[title=${theme}]`).attr('disabled', false)
    }
</script>

</html>

變量設(shè)置主題

  • 上面是主題樣式文件之間的切換,對于那些在拾色器中任意選擇顏色更換主題的就不大適用了
  • 這時候切換主題更適合通過變量去設(shè)置系統(tǒng)的主題
  • 現(xiàn)在 :root 中定義全局變量,然后通過 var() 在樣式中去使用變量,然后通過去 setProperty 修改該變量值即可更換主題樣式了
<!DOCTYPE html>
<html lang="en" class="dark">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>主題切換方案二</title>
    <style>
        :root {
            --theme-color: #333333;
        }

        html {
            background-color: var(--theme-color, "#E65A65");
        }
    </style>
</head>

<body>
    <select name="主題" onchange="changeTheme(this.value)">
        <option value="#333333">默認</option>
        <option value="#1a7efc">藍色</option>
        <option value="#16d46b">綠色</option>
        <option value="#f1ce6b">黃色</option>
    </select>
</body>

<script>
    function changeTheme(theme) {
        document.documentElement.style.setProperty('--theme-color', theme)
    }
</script>

</html>

總結(jié) 

到此這篇關(guān)于前端實現(xiàn)界面切換主題的文章就介紹到這了,更多相關(guān)前端界面切換主題內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • ES2020 新特性(種草)

    ES2020 新特性(種草)

    這篇文章主要介紹了ES2020 新特性(種草),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • layui table設(shè)置某一行的字體顏色方法

    layui table設(shè)置某一行的字體顏色方法

    今天小編就為大家分享一篇layui table設(shè)置某一行的字體顏色方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-09-09
  • js實現(xiàn)仿百度瀑布流的方法

    js實現(xiàn)仿百度瀑布流的方法

    這篇文章主要介紹了js實現(xiàn)仿百度瀑布流的方法,以完整實例形式分析了js仿百度瀑布流的相關(guān)樣式與實現(xiàn)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-02-02
  • 一文詳解JavaScript有那些數(shù)據(jù)類型

    一文詳解JavaScript有那些數(shù)據(jù)類型

    在編程過程中,數(shù)據(jù)類型是重要的概念,為了能夠操作變量,了解數(shù)據(jù)類型是很重要的,這篇文章主要介紹了JavaScript有那些數(shù)據(jù)類型的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2026-02-02
  • Js面試算法詳解

    Js面試算法詳解

    AI的興起,使得大家對算法的關(guān)注也越來越高。而作為一個前端工程師,算法很多時候是我們的弱點,本文譯自國外一篇面試題。列出了一些簡單算是跟算法相關(guān)的面試題
    2018-04-04
  • JS什么場景不適合箭頭函數(shù)

    JS什么場景不適合箭頭函數(shù)

    這篇文章主要介紹了JS什么場景不適合箭頭函數(shù),對箭頭函數(shù)感興趣的同學(xué),可以參考下
    2021-04-04
  • Javascript動畫效果(2)

    Javascript動畫效果(2)

    這篇文章主要為大家詳細介紹了第二篇Javascript動畫效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • 詳解webpack babel的配置

    詳解webpack babel的配置

    本篇文章主要介紹了詳解webpack babel的配置,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-01
  • Js表格萬條數(shù)據(jù)瞬間加載實現(xiàn)代碼

    Js表格萬條數(shù)據(jù)瞬間加載實現(xiàn)代碼

    一條數(shù)據(jù)創(chuàng)建一行,如果數(shù)量大的時候,一次性要加載完數(shù)據(jù)的話,瀏覽器就會卡上半天,下面有個不錯的方法,大家可以參考下
    2014-02-02
  • js實現(xiàn)隨機點名器精簡版

    js實現(xiàn)隨機點名器精簡版

    這篇文章主要為大家詳細介紹了js實現(xiàn)隨機點名器的精簡版,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-06-06

最新評論

白山市| 凤台县| 科技| 诸城市| 大新县| 綦江县| 玛曲县| 汉寿县| 沽源县| 珲春市| 五华县| 威远县| 包头市| 永泰县| 广安市| 揭阳市| 肇州县| 元阳县| 九龙县| 呈贡县| 彭州市| 易门县| 三门峡市| 昌平区| 隆尧县| 正定县| 云南省| 会昌县| 长白| 泗水县| 吴忠市| 都昌县| 通州区| 兴仁县| 泌阳县| 新沂市| 兴隆县| 衡东县| 绥江县| 麟游县| 龙胜|