H5 Mosh教程筆記 - CSS簡介

H5 Mosh教程筆記

先列出教程中會用到的網(wǎng)站

網(wǎng)站H5規(guī)范驗證網(wǎng)站
CSS格式規(guī)范驗證網(wǎng)站
轉(zhuǎn)義字符查詢
免費圖片下載網(wǎng)站
免費圖片視頻下載網(wǎng)站
瀏覽器HTML標簽前翎,CSS屬性支持情況查詢網(wǎng)站
CSS一致化工具安裝
漸變色代碼生成網(wǎng)站
CSS形狀代碼生成網(wǎng)站
字體網(wǎng)站fontsquirrel
字體網(wǎng)站fonts
字體網(wǎng)站myfonts

教程開始

· CSS

CSS是描述網(wǎng)站樣式的文件,HTML專注頁面元素畅涂,CSS專注元素以什么樣式展示港华,分工明確。

CSS樣式可以嵌入HTML文件午衰,嵌入元素中立宜,或者單獨成為一個文件,供HTML頁面引用臊岸,這里當然推薦使用CSS單獨成為文件供HTML引用的方式橙数,各自專注自己的事。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <!-- CSS樣式文件引入方式 -->
    <link rel="stylesheet" href="../node_modules/normalize.css/normalize.css">
    <link rel="stylesheet" href="../css/style.css">
    <!-- HTML內(nèi)嵌CSS -->
    <style>
        .yellowgreen {
            color: yellowgreen;
        }
    </style>
</head>
<body>
    <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quia, optio!</p>
    <p class="yellowgreen">
        Lorem ipsum dolor sit amet consectetur adipisicing elit. Ullam, placeat.
    </p>
    <!-- 元素內(nèi)嵌CSS -->
    <p style="color: gray;">
        Lorem ipsum dolor sit amet, consectetur adipisicing elit. Provident, temporibus!
    </p>
</body>
</html>
· 基礎選擇器
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        /* 類型選擇器帅戒,通過元素類型名字選取元素灯帮,這里的類型就是p標簽*/
        /* 類型選擇器會選中所有同樣類型的元素,這里所有的p標簽文字內(nèi)容都會是orange(沒有優(yōu)先級更高的選擇器前提下) */
        p {
            color: orange;
        }

        /* 類選擇器蜘澜,每個元素可以有一個或多個類施流,也就是元素里的class */
        /* 一個類也可以供多個元素使用,這樣可以統(tǒng)一多個不同元素的樣式 */
        .describe {
            color: yellowgreen;
        }

        /* ID選擇器鄙信,每個元素可以且僅可以指定1個ID瞪醋,1個ID能且僅能與1個元素綁定 */
        /* 精確選中選擇器,不常用装诡,或者說我用的少银受,更多的時候需要控制多個元素的樣式 */
        #graytext {
            color: gray;
        }

        /* 屬性選擇器,更不常用的一種方式鸦采,通過標簽及其屬性的值來精確選擇元素 */
        /* 以下是選擇href=https://google.com的a標簽宾巍,屬性必須精確匹配 */
        /* 也可以有模式匹配,如以什么開頭的(href^='xxxx')渔伯,或什么結(jié)尾的(href$='xxxxx')顶霞, */
        /* 或匹配單詞的(href*='xxx') */
        a[] {
            color: darkorchid;
        }

        /* 從運行結(jié)果看,可能你也發(fā)現(xiàn)了锣吼,選擇器也是有優(yōu)先級的 */
        /* 類選擇器和ID選擇器就覆蓋了類型選擇器的樣式 */
        /* 簡單來說选浑,作用范圍越小的選擇器,優(yōu)先級越高 */
    </style>
</head>
<body>
    <p>
        Lorem ipsum dolor sit amet consectetur adipisicing elit. Animi, molestiae!
    </p>
    <p class="describe">
        Lorem ipsum dolor sit amet consectetur adipisicing elit. Sint, unde!
    </p>
    <p id="graytext">
        Lorem ipsum dolor sit amet consectetur adipisicing elit. Officia, saepe.
    </p>

    <a  target="_blank">Google</a>
</body>
</html>
· 關(guān)系選擇器
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <!-- 關(guān)系選擇器是依據(jù)元素的位置或?qū)蛹墎磉x擇元素的 -->
    <style>
        /* 選擇ID為products的元素里玄叠,所有后代中(也可以理解成嵌套在section里)的p元素 */
        /* 這就是依據(jù)元素的層級來選擇古徒,section標簽里的2個p標簽會被選中 */
        #products p {
            color: yellowgreen;
        }

        /* 選擇ID為products的元素里,第一層嵌套的p標簽 */
        /* 也就是section標簽里的直接后代元素中選擇p標簽 */
        /* 并設置文本顏色為orange */
        #products > p {
            color: orange;
        }

        /* 選擇ID為products的標簽(section標簽)后面緊跟著的第一個p標簽 */
        /* 并設置文本顏色為darkorchid */
        #products + p {
            color: darkorchid;
        }

        /* 選擇與ID為products標簽同級的所有p標簽 */
        /* 并設置文本顏色為darkgray */
        #products ~ p {
            color: darkgrey;
        }
        /* 關(guān)系選擇器可以節(jié)省一些代碼读恃,不用聲明很多類和ID */
        /* 但這種代碼很脆弱隧膘,元素之間的關(guān)系一變代态,樣式就失效了 */
    </style>
</head>
<body>
    <section id="products">
        <p>
            1 Lorem ipsum, dolor sit amet consectetur adipisicing elit. Nisi, soluta.
        </p>
        <p>
            2 Lorem ipsum, dolor sit amet consectetur adipisicing elit. Nisi, soluta.
        </p>
        <article>
            <p>
                3 Lorem ipsum dolor sit, amet consectetur adipisicing elit. Consequuntur, aut?
            </p>
        </article>
    </section>
    <p>
        4 Lorem ipsum dolor sit amet consectetur adipisicing elit. Quam, minima!
    </p>
    <p>
        5 Lorem ipsum dolor, sit amet consectetur adipisicing elit. Cum, quam.
    </p>
    
</body>
</html>
· 偽類選擇器

偽類選擇器是瀏覽器內(nèi)置的選擇器,并不是CSS的標準疹吃,偽類選擇器的使用可以減少一下代碼量蹦疑,很方便,但跟瀏覽器的實現(xiàn)關(guān)聯(lián)較大了

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        /* 在article的子元素中互墓,找到p標簽第一次出現(xiàn)的位置必尼,并將文字顏色變成orange */
        article p:first-of-type {
            color: orange;
        }

        /* 在article的子元素中蒋搜,找到p標簽最后一次出現(xiàn)的位置篡撵,并將文字顏色變成darkorchid */
        article p:last-of-type {
            color:darkorchid 
        }

        /* 在ul里的li,找到奇數(shù)(odd)位置的li豆挽,并設置文本顏色為yellowgreen */
        /* nth-child的參數(shù)可以是odd育谬,event, 3n(這里不一定是3n帮哈,也可以是5n膛檀,6n等,意思是間隔多少元素算一次有效選中)*/
        ul li:nth-child(odd){
            color: yellowgreen;
        }

        /* a標簽在點擊過以后的顏色 */
        a:visited {
            color: dodgerblue;
        }

        /* a標簽在未點擊過時的顏色 */
        a:link {
            color: darkorchid;
        }

        /* a標簽鼠標懸停顏色 */
        a:hover {
            color: orange;
        }

        /* 使用tab鍵讓a標簽獲取焦點時的顏色 */
        a:focus {
            color: orange;
        }
    </style>
</head>
<body>
    <article>
        <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Porro, asperiores.</p>
        <p>Lorem ipsum dolor sit amet.</p>
    </article>
    <a >Google</a>
    <ul>
        <li>Item 1</li>
        <li>Item 2</li>
        <li>Item 3</li>
        <li>Item 4</li>
        <li>Item 5</li>
    </ul>
</body>
</html>
· 偽元素選擇器

偽元素選擇器可簡化對元素的樣式修改

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        /* 使用p標簽的偽元素選擇器娘侍,選擇p標簽內(nèi)容的首字母咖刃,設置文字樣式,以簡化代碼憾筏,替代span標簽 */
        p::first-letter {
            font-size: 140%;
            font-weight: bold;
        }

        /* 改變p標簽內(nèi)容的第一行的字體樣式 */
        p::first-line {
            font-weight: bold;
        }

        /* 改變p標簽內(nèi)容被選中后的背景色 */
        p::selection {
            background-color: dodgerblue;
        }

        /* 在p標簽的內(nèi)容前增加content的內(nèi)容嚎杨,并可以改變元素類型為塊級元素 */
        p::before {
            content: '...';
            display: block;
        }

        /* 在p標簽內(nèi)容后增加content的內(nèi)容,并可以改變元素類型為塊級元素 */
        p::after {
            content: '...';
            display: block;
        }
    </style>
</head>
<body>
    <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Fugit delectus vitae saepe perspiciatis nemo sint dolores possimus esse tempora facilis.</p>
</body>
</html>
· 選擇器優(yōu)先級

選擇器的優(yōu)先級是 ID選擇器 > 類氧腰、屬性選擇器 > 元素選擇器
在vscode中枫浙,會顯示選擇器的權(quán)重,從左到右分別是ID選擇器古拴,類箩帚、屬性選擇器,元素選擇器黄痪,分別代表百位紧帕,十位,個位桅打,數(shù)值越大是嗜,權(quán)重越高,高權(quán)重的會覆蓋低權(quán)重的


image.png

如果需要強制使被覆蓋的選擇器生效油额,有兩種方式

  1. 使用!important關(guān)鍵字(盡量少使用或不使用叠纷,難維護)
    如下代碼中第一個p標簽的樣式會生效:
p {
  color: red !important;
}

p {
  color: green;
}
  1. 使用選擇器組合的方式,提高權(quán)重潦嘶,給需要提高權(quán)重的選擇器增加一個ID選擇器(盡量少組合涩嚣,一個標簽的選擇器組合太多崇众,也不好維護)
p #paragraph{
  color: red;
}

p {
  color: green;
}
· CSS繼承

選擇器的內(nèi)容是可以繼承的,某個元素的子元素是會繼承父元素的部分(比如文字等航厚,有些是不會繼承的顷歌,不用記,用多了就只知道了)樣式幔睬,也可以主動選擇不繼承

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        p {
            color: orange;
            border: 1px solid black;
        }

        strong {
            /* strong默認會繼承p的color眯漩,也可以指定不繼承 */
            /* 使用color的初始值,而不是繼承來的值 */
            color: initial;
            /* border默認不繼承麻顶,但也可以強制使用繼承的值 */
            border: inherit;
        }
    </style>
</head>
<body>
    <p>Lorem ipsum dolor, sit amet <strong>consectetur</strong> adipisicing elit. Laudantium, vitae!</p>
</body>
</html>
· 顏色

顏色的表示在CSS中有HEX赦抖,RGB,RGBA辅肾,HSL队萤,HSLA

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        div {
            width: 200px;
            height: 200px;
            /* HEX 十六進制表示法 */
            background-color: #4287f5;
            /* rgb(紅,綠矫钓,藍)表示法 */
            background-color: rgb(66, 135, 245);
            /* 帶透明度的rgb表示法要尔,rgba */
            background-color: rgba(66, 135, 245, 0.8);
            /* hsl(標準色盤偏移度,飽和度新娜,亮度)表示法 */
            background-color: hsl(217, 90, 61);
            /* 帶透明度的hsl表示法 */
            background-color: hsla(217, 90, 61, 0.5);
        }
    </style>
</head>
<body>
    <div>

    </div>
</body>
</html>
· 漸變
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        div { 
            width: 200px;
            height: 200px;
            /* 線性漸變的配置linear-gradient(漸變方向赵辕,顏色1,顏色2概龄。还惠。。顏色n) */
            background-image: linear-gradient(to right, rgb(78, 78, 188), yellow);
            background-image: linear-gradient(45deg, rgb(78, 78, 188), yellow, rgb(252, 43, 43));

            /* 徑向漸變配置(漸變方向旁钧,顏色1吸重,顏色2,顏色3) */
            background: radial-gradient(circle, orange, yellow, green);
            background: radial-gradient(circle at top left, orange, yellow, green);
        }
    </style>
</head>
<body>
    <div>

    </div>
</body>
</html>
· 邊框
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        div {
            width: 200px;
            height: 200px;
            /* border線的大小歪今,border線的樣式嚎幸,border線的顏色 */
            border: 1px solid black;
            border: 1px dotted royalblue;
            border: 1px dashed greenyellow;
            border-top: 1px solid darkorchid;
            /* 上,右寄猩,下嫉晶,左 */
            border-width: 1, 1, 1, 1;
            /* 圓角屬性,設置為寬度的一半是正圓田篇,設置100%也是正圓替废,推薦使用100%,不易出錯 */
            border-radius: 100%;
        }
    </style>
</head>
<body>
    <div>

    </div>
</body>
</html>
· 陰影
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        div {
            width: 200px;
            height: 200px;
            background: dodgerblue;
            /* 參數(shù)為正數(shù)泊柬,則陰影向右偏移椎镣,參數(shù)為負數(shù),則陰影向左*/
            box-shadow: 10px;

            /* 參數(shù)為正數(shù)兽赁,則陰影向右偏移状答,參數(shù)為負數(shù)冷守,則陰影向左*/
            /* 在x方向和y方向上同時移動陰影 */
            box-shadow: 10px 10px;

            /* 參數(shù)為正數(shù),則陰影向右偏移惊科,參數(shù)為負數(shù)拍摇,則陰影向左*/
            /* 陰影顏色為灰色 */
            box-shadow: 10px 10px gray;

            /* 參數(shù)為正數(shù),則陰影向右偏移馆截,參數(shù)為負數(shù)充活,則陰影向左*/
            /* x軸方向偏移,y軸方向偏移蜡娶,陰影模糊程度混卵,陰影顏色,用rgba作為陰影顏色更好翎蹈,有透明度淮菠,更容易透出底色男公,顯得更和諧一些 */
            box-shadow: 10px 10px 10px gray;
            
        }
    </style>
</head>
<body>
    <div>

    </div>
</body>
</html>

下一篇
H5 Mosh教程筆記 - 排版簡介
上一篇
H5 Mosh教程筆記 - 常用標簽簡介

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末荤堪,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子枢赔,更是在濱河造成了極大的恐慌澄阳,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,248評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件踏拜,死亡現(xiàn)場離奇詭異碎赢,居然都是意外死亡,警方通過查閱死者的電腦和手機速梗,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評論 2 381
  • 文/潘曉璐 我一進店門肮塞,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人姻锁,你說我怎么就攤上這事枕赵。” “怎么了位隶?”我有些...
    開封第一講書人閱讀 153,443評論 0 344
  • 文/不壞的土叔 我叫張陵拷窜,是天一觀的道長。 經(jīng)常有香客問我涧黄,道長篮昧,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,475評論 1 279
  • 正文 為了忘掉前任笋妥,我火速辦了婚禮懊昨,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘春宣。我一直安慰自己酵颁,他們只是感情好狈孔,可當我...
    茶點故事閱讀 64,458評論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著材义,像睡著了一般均抽。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上其掂,一...
    開封第一講書人閱讀 49,185評論 1 284
  • 那天油挥,我揣著相機與錄音,去河邊找鬼款熬。 笑死深寥,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的贤牛。 我是一名探鬼主播惋鹅,決...
    沈念sama閱讀 38,451評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼殉簸!你這毒婦竟也來了闰集?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,112評論 0 261
  • 序言:老撾萬榮一對情侶失蹤般卑,失蹤者是張志新(化名)和其女友劉穎武鲁,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蝠检,經(jīng)...
    沈念sama閱讀 43,609評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡沐鼠,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,083評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了叹谁。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片饲梭。...
    茶點故事閱讀 38,163評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖焰檩,靈堂內(nèi)的尸體忽然破棺而出憔涉,到底是詐尸還是另有隱情,我是刑警寧澤锅尘,帶...
    沈念sama閱讀 33,803評論 4 323
  • 正文 年R本政府宣布监氢,位于F島的核電站,受9級特大地震影響藤违,放射性物質(zhì)發(fā)生泄漏浪腐。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,357評論 3 307
  • 文/蒙蒙 一顿乒、第九天 我趴在偏房一處隱蔽的房頂上張望议街。 院中可真熱鬧,春花似錦璧榄、人聲如沸特漩。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,357評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽涂身。三九已至雄卷,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間蛤售,已是汗流浹背丁鹉。 一陣腳步聲響...
    開封第一講書人閱讀 31,590評論 1 261
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留悴能,地道東北人揣钦。 一個月前我還...
    沈念sama閱讀 45,636評論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像漠酿,于是被迫代替她去往敵國和親冯凹。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 42,925評論 2 344

推薦閱讀更多精彩內(nèi)容