CSS基礎(chǔ)記錄

Flex

flex和inline-flex

/* 
    flex        寬度默認(rèn)100%
    inline-flex 根據(jù)子元素自適應(yīng)
*/
display: flex | inline-flex

flex-direction

flex-direction: row(default) | row-reverse | column | column-reverse

flex-wrap

/*
    wrap         與flex-direction方向相同
    wrap-reverse 與flex-direction方向相相反(左下開始)
*/
flex-wrap: nowrap(default) | wrap | wrap-reverse

flex-flow

flex-flow: <flex-direction> || <flex-wrap>

justify-content

/*
    space-between 兩端對齊厂镇,中間間隔相等
    space-around  每個(gè)塊兩側(cè)相等纤壁,類似padding
*/
justify-content: flex-start(default) | flex-end | center | space-between | space-around

align-items

/*
    ** 多行對齊方式 **
    baseline 項(xiàng)目的第一行文字的基線對齊
    stretch  如果項(xiàng)目未設(shè)置高度或設(shè)為auto,將拉長占滿整個(gè)容器的高度
*/
align-content: flex-start | flex-end | center | space-between | space-around | stretch(default)

項(xiàng)目屬性

/*
    ** 多行對齊方式 **
    order       排列順序捺信,值越小越靠前(可相同酌媒,可負(fù)數(shù))
    flex-grow   項(xiàng)目放大比例 默認(rèn)0 box按照值大小等分
    flex-shrink 項(xiàng)目縮小比例 默認(rèn)1 若為0則此項(xiàng)不縮小(無負(fù)數(shù))
    flex-basis  沒有則auto為width 超出自動(dòng)shrink 受maxminwidth影響                     見http://www.reibang.com/p/17b1b445ecd4
    flex        grow, shrink, basis的簡寫 (默認(rèn)0 1 auto)
    align-self  單個(gè)項(xiàng)目與其他不一樣的對齊方式,覆蓋align-items
*/
flex-basis: <length> | auto; /* default auto */
flex: none | [ <'flex-grow'> <'flex-shrink'>? || <'flex-basis'> ]
align-self: auto(default) | flex-start | flex-end | center | baseline | stretch

CSS選擇器系列

基本選擇器

選擇器 含義
* 通配符選擇器
#id id選擇器
.class 類選擇器
a[href="a.com"] 屬性選擇器
:hover 偽類選擇器
tag 標(biāo)簽選擇器
::before 偽元素選擇器

組合選擇器

選擇器 含義
AB AB同時(shí)具有
A, B A或 / 和B
A B B是A的后代元素
A > B B是A的直接子元素
A + B B是A的后一個(gè)
A ~ B B是A的后N個(gè)

優(yōu)先級

內(nèi)聯(lián)樣式 > ID 選擇器 > 類選擇器 = 屬性選擇器 = 偽類選擇器 > 標(biāo)簽選擇器 = 偽元素選擇器

!import高于內(nèi)聯(lián)選擇器

優(yōu)先級是由 A 秒咨、B喇辽、CD 的值來決定的雨席,其中它們的值計(jì)算規(guī)則如下:

  1. 如果存在內(nèi)聯(lián)樣式菩咨,那么 A = 1, 否則 A = 0;
  2. B 的值等于 ID選擇器 出現(xiàn)的次數(shù);
  3. C 的值等于 類選擇器屬性選擇器偽類 出現(xiàn)的總次數(shù);
  4. D 的值等于 標(biāo)簽選擇器偽元素 出現(xiàn)的總次數(shù)

比較規(guī)則是: 從左往右依次進(jìn)行比較 ,較大者勝出陡厘,如果相等抽米,則繼續(xù)往右移動(dòng)一位進(jìn)行比較 。如果4位全部相等雏亚,則后面的會(huì)覆蓋前面的

偽類缨硝,偽元素

選擇器 含義
a:link 匹配所有未被點(diǎn)擊的鏈接
a:visited 匹配所有已被點(diǎn)擊的鏈接
a:hover 匹配鼠標(biāo)懸停其上的a元素
a:active 匹配鼠標(biāo)已經(jīng)其上按下、還沒有釋放的a元素
li:first-child 匹配父元素的第一個(gè)子元素li
li:last-child 匹配父元素的最后一個(gè)子元素li
li:nth-child(n) 匹配父元素的第n個(gè)子元素li(odd奇數(shù)罢低,even偶數(shù))
E::before 在E元素內(nèi)創(chuàng)建一個(gè)子元素,插入生成的內(nèi)容作為偽元素胖笛,放在最前面
E::after 在E元素內(nèi)創(chuàng)建一個(gè)子元素网持,插入生成的內(nèi)容作為偽元素,放在最后面
E::selection 應(yīng)用于文檔中被用戶高亮的部分(比如使用鼠標(biāo)選中的部分)
E::first-letter 匹配E元素的第一個(gè)字母/第一行的第一個(gè)字母
E::first-line 匹配E元素的第一行

https://www.itcodemonkey.com/article/2853.html CSS基礎(chǔ)題

問答

CSS 有哪些樣式可以給子元素繼承

  • 可繼承的:font-size,font-weight,line-height,color,cursor
  • 不可繼承的一般是會(huì)改變盒子模型的:display,margin长踊、border功舀、paddingheight

行內(nèi)元素有哪些身弊?塊級元素有哪些辟汰? 空(void)元素有那些?

  • 行內(nèi): input,span,a,img以及display:inline的元素
  • 塊級: p,div,header,footer,aside,article,ul以及display:block這些
  • void: br, hr

CSS3實(shí)現(xiàn)一個(gè)扇形

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>扇形</title>
    <style>
        .sector {
          width: 0;
          height: 0;
          border: 50px solid transparent;
          border-left-width: 20px;
          border-right-width: 20px;
          border-top-color: red;
          border-radius: 20px;
        }
</style>
</head>
<body>
    <div class="sector"></div>
</body>

</html>

盒模型

html {
  box-sizing: border-box;
}
*,
*::before,
*::after {
  box-sizing: inherit;
}

padding-box:(已從規(guī)范中移除)width包括內(nèi)容和padding

border-box:即便設(shè)置了padding或border也不會(huì)改變元素的寬度和高度

content-box:會(huì)改變(標(biāo)準(zhǔn)盒模型)

inherit:使元素繼承父級的box-sizing規(guī)則

低版本IE默認(rèn)使用怪異模式阱佛,即border-box

清除浮動(dòng)

僅在float布局需要(可以考慮使用flex布局)

偽類添加clear: both;(閉合浮動(dòng))

在父元素后添加內(nèi)容content帖汞,清除浮動(dòng)

.clearfix{}
.clearfix::after {
  content: '';
  display: block;
  clear: both;
}

BFC(block formatting context)

1.通常的做法是設(shè)置父元素 overflow: auto 或者設(shè)置其他的非默認(rèn)的 overflow: visible 的值

當(dāng)你使用這個(gè)屬性只是為了創(chuàng)建BFC的時(shí)候,你可能會(huì)發(fā)現(xiàn)一些不想要的問題凑术,比如滾動(dòng)條或者一些剪切的陰影翩蘸,需要注意。另外淮逊,對于后續(xù)的開發(fā)催首,可能不是很清楚當(dāng)時(shí)為什么使用overflow。所以你最好添加一些注釋來解釋為什么這樣做

2.display: flow-root

創(chuàng)建無副作用的BFC泄鹏。在父級塊中使用 display: flow-root 可以創(chuàng)建新的BFC

animate如何停留最后一幀

animation-fill-mode: forwards;
<!--backwards則停留在首幀,both是輪流-->

水平垂直居中的方法

水平居中
1.定寬塊級

.center{
    width:200px;
    margin:0 auto;
}

2.不定寬塊級

.center {
    display:table;
    margin:0 auto;
}
.center {
    text-align:center;
    .child {
        display:inline-block;
    }
}
.center {
    display:flex;
    justify-content:center;
}

垂直居中
1.單行文本

.center {
    padding-top: x
    padding-bottom: x
}
.center {
    height: x
    line-height: x
}

2.多行文本

.center {
    diaplay:table;
    .child {
        display:table-cell;
        verticle-align:middle;
    }
}

3.塊級元素
flex

.center {
    display: flex;
    align-items: center;
}

position+transform

.center {
    width
    height
    position:relative;
    .child {
        position:absolute;
        top:50%;
        left:50%;
        transform:translate(-50%, -50%)
    }
}

寬高比

.box {
  background: #333;
  width: 50%;
}
.box::before {
  content: '';
  padding-top: 100%;
  float: left;
}
.box::after {
  content: '';
  display: block;
  clear: both;
}
  • padding-top: 100%; 設(shè)置偽元素的內(nèi)上邊距郎任,這里的百分比的值是按照寬度計(jì)算的,所以會(huì)呈現(xiàn)為一個(gè)響應(yīng)式的元素塊备籽。
  • 此方法還允許將內(nèi)容正常放置在元素內(nèi)舶治。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子歼疮,更是在濱河造成了極大的恐慌杂抽,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,376評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件韩脏,死亡現(xiàn)場離奇詭異缩麸,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)赡矢,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,126評論 2 385
  • 文/潘曉璐 我一進(jìn)店門杭朱,熙熙樓的掌柜王于貴愁眉苦臉地迎上來相恃,“玉大人谍椅,你說我怎么就攤上這事∑┲浚” “怎么了空民?”我有些...
    開封第一講書人閱讀 156,966評論 0 347
  • 文/不壞的土叔 我叫張陵刃唐,是天一觀的道長。 經(jīng)常有香客問我界轩,道長画饥,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,432評論 1 283
  • 正文 為了忘掉前任浊猾,我火速辦了婚禮抖甘,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘葫慎。我一直安慰自己衔彻,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,519評論 6 385
  • 文/花漫 我一把揭開白布偷办。 她就那樣靜靜地躺著艰额,像睡著了一般。 火紅的嫁衣襯著肌膚如雪爽篷。 梳的紋絲不亂的頭發(fā)上悴晰,一...
    開封第一講書人閱讀 49,792評論 1 290
  • 那天,我揣著相機(jī)與錄音逐工,去河邊找鬼铡溪。 笑死,一個(gè)胖子當(dāng)著我的面吹牛泪喊,可吹牛的內(nèi)容都是我干的棕硫。 我是一名探鬼主播,決...
    沈念sama閱讀 38,933評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼袒啼,長吁一口氣:“原來是場噩夢啊……” “哼哈扮!你這毒婦竟也來了纬纪?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,701評論 0 266
  • 序言:老撾萬榮一對情侶失蹤滑肉,失蹤者是張志新(化名)和其女友劉穎包各,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體靶庙,經(jīng)...
    沈念sama閱讀 44,143評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡问畅,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,488評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了六荒。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片护姆。...
    茶點(diǎn)故事閱讀 38,626評論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖掏击,靈堂內(nèi)的尸體忽然破棺而出卵皂,到底是詐尸還是另有隱情,我是刑警寧澤砚亭,帶...
    沈念sama閱讀 34,292評論 4 329
  • 正文 年R本政府宣布灯变,位于F島的核電站,受9級特大地震影響钠惩,放射性物質(zhì)發(fā)生泄漏柒凉。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,896評論 3 313
  • 文/蒙蒙 一篓跛、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧坦刀,春花似錦愧沟、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至盖奈,卻和暖如春混坞,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背钢坦。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工究孕, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人爹凹。 一個(gè)月前我還...
    沈念sama閱讀 46,324評論 2 360
  • 正文 我出身青樓厨诸,卻偏偏與公主長得像,于是被迫代替她去往敵國和親禾酱。 傳聞我的和親對象是個(gè)殘疾皇子微酬,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,494評論 2 348