css雜記


title: css雜記
date: 2017-05-21 15:52:05
tags: css筆記


word-spacing 單詞間距

判斷是否是單詞的依據(jù)是有沒有空格

行高的測量方式

假如文字是12px,行高是16px明棍,那么文字上下空隙分別是2px乡革,假如行高是15px,那么上方是1px,下方是2px沸版。

white-space 強制不換行

值為nowrap為強制不換行嘁傀,默認是normal。

text-indent 首行縮進视粮。

通常設置em心包,這樣文字尺寸改變了也不用該縮進值,只需要設置2em便一直是2個字的距離馒铃。

文字和空格的大小

字體本身原本是一張張的圖片,通過一定的編碼方式確定是哪個文字痕惋,文字和文字之間本身也有一定的縫隙区宇,算上縫隙才算是一個文字的大小,所以文字大小最好是從上到下測量值戳。而宋體中一個空格的大小差不多是一個文字的一半议谷。

偽類的順序

a:link 未訪問過,a:visited 訪問過后,a:bover 鼠標移入,a:active 鼠標按下。

clear屬性

給一個元素加上clear屬性堕虹,那么對應方向上的元素就不會浮動了卧晓。值可以設置為left|right|both|none|inherit。
clear:both是左右兩側都不能浮動赴捞。

清除浮動的方法

清除浮動是為了讓元素回歸文檔流逼裆,回歸到同一層級。

加高度

給浮動元素的父元素加一個固定的高度赦政。缺點是擴展性不好胜宇。有時候高度不能寫死。

父級浮動

給浮動元素的父元素加浮動恢着,缺點是父元素的父元素仍然會有問題桐愉,當前元素的父元素同時也是更上級元素的子元素。而且margin:0 auto;會失效

inline-block

給浮動元素的父元素加inline-block掰派,缺點也是margin:0 auto;會失效

使用空白元素

在浮動元素的后面增加一個沒有內(nèi)容的塊級元素設置css為clear:both从诲。缺點是只要清除浮動就要放一個空白元素,而且ie6仍會有2px的默認高度靡羡。

br

在浮動元素后面增加一個<br clear="all" />系洛。缺點也是只要清除浮動就要放一個空白元素。

偽類清除浮動

假設浮動元素的父元素添加一個class名為clearfix略步。

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

zoom是為了兼容ie瀏覽器碎罚,當設置了zoom之后會檢索設置對象的縮放比例,所設置的元素就會擴大或縮小纳像,高度就被重新計算了荆烈,所以可以清除浮動,*號是hack的寫法,只有ie6憔购、7瀏覽器可以識別宫峦。

overflow

給浮動元素的父元素設置overflow:hidden。原理是觸發(fā)BFC玫鸟。缺點是比浮動長的內(nèi)容會被直接剪裁掉导绷。

BFC和haslayout

BFC(block formatting context):BFC是塊級元素格式化上下文。是標準瀏覽器塊級元素的標準(除了ie6屎飘、7妥曲、8之外都是標準瀏覽器)。

haslayout:ie瀏覽器特有的钦购。

只要觸發(fā)了這兩個其一檐盟,那么這個觸發(fā)的區(qū)域就是一個獨立的區(qū)域不受外界影響,也可以理解為元素就不會脫離標準文檔流了押桃。

觸發(fā)BFC的情況

  1. float的值不會none葵萎。
  2. overflow的值不為visble(這就是overflow:hidden可以清楚浮動的原理,讓其觸發(fā)BFC)唱凯。
  3. display的值為table-cell羡忘、table-caption、inline-block中的任何一個磕昼。
  4. position的值不為relative和staic卷雕。
  5. width|height|min-width|min-height的值不是auto的時候。

觸發(fā)haslayout的情況

  1. zoom的值不會normal的時候票从。給ie瀏覽器設置zoom:1清楚浮動就是為了觸發(fā)haslayout爽蝴。

css hack

  • \9所有ie10及以下的瀏覽器。\9是寫在屬性值的后面纫骑。

  • *ie7及以下瀏覽器蝎亚,寫在屬性的開頭。

  • _ie6及以下瀏覽器先馆,寫在屬性的開頭发框。

hack的書寫順序要從高版本往低版本寫,因為css是按照順序執(zhí)行煤墙,后面的覆蓋前面的梅惯,所以先做統(tǒng)一處理,最后再去處理個別低版本瀏覽器仿野。另外hack不是一個標準的方法铣减,所以一般不要使用。

禁止選中文字

不同的瀏覽器設置的內(nèi)容不一樣脚作,user-select不是一個W3C的標準葫哗,瀏覽器的支持不完成缔刹,需要對不同的瀏覽器進行調(diào)整。

user-select有2個值(none表示不能選中文本劣针,text表示可以選擇文本)

-moz-user-select:none;  /*火狐*/

-webkit-user-select:none;   /*webkit瀏覽器*/

-ms-user-select:none;   /*IE10*/

-khtml-user-select:none;    /*早期瀏覽器*/

user-select:none;

ie6至ie9還沒發(fā)現(xiàn)有css屬性支持

opacity的兼容性

opacity是設置透明度校镐,標準寫法是opacity:1;,兼容ie的寫法是filter:alpha(opacity=100);

超出2行隱藏(強制2行)

首先css有三個屬性:

overflow:hidden超出的內(nèi)容隱藏。

text-overflow:ellipsis溢出用省略號顯示

white-space:nowrap溢出不換行

這樣只能強制一行顯示捺典,如果要強制2行顯示要用css3的屬性鸟廓。

display:-webkit-box將對象作為彈性伸縮盒子模型顯示

webkit-box-orient:vertical設置伸縮盒子的子元素排列方式(從上到下垂直排列子元素)

-webkit-line-clamp:2顯示的行數(shù),不能單獨出現(xiàn)襟己。

最后css樣式如下:

overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp:2;

css命名參考

頭:header head

內(nèi)容:content container

尾:footer

導航:nav navigation

側欄:sidebar aside

欄目:column

頁面外圍控制整體布局寬度:wrapper wrap

左右中:left right middle center

登錄條:login

標志:logo

廣告:banner

頁面主體:main body main-content page-main

熱點:hot

新聞:news

下載:download

子導航:subnav

菜單:menu dropmenu

子菜單:submenu

標題:title ttl caption small-caption

摘要:summary

搜索:search

友情鏈接:friend-link flink

頁腳:footer

版權:copyright

滾動:scroll

標簽頁:tab

文章列表:list

欄目標題:title

服務:service

注冊:register

投票:vote

加入我們:joinus

狀態(tài):status status-bar

按鈕:btn-

圖標:ico- icon-

滾動:scroll

標簽頁:tab

文章列表:list

彈出層:pop popup

對話框:dialog dlg

狀態(tài)提醒:success error alert notice caution

提示信息:msg message message-box

當前的:active act current curr selected on

小技巧:tips

注釋:note notice

指南:guide

移動端彈窗時暴力禁止html滾動

html.lock-html {
    height: 100%;
    overflow: hidden;
}

實現(xiàn)文字豎向排版

模擬豎排文字

對文字對象的寬度設置只能排下一個文字的寬度距離引谜,讓文字一行排不下兩個文字使其文字自動換行,就形成了豎立排版需求擎浴。

writing-mode屬性

writing-mode 有兩套屬性员咽,一套是IE私有的,另一套是CSS規(guī)范屬性退客。

CSS規(guī)范屬性

writing-mode: horizontal-tb;    /* 默認值 */
writing-mode: vertical-rl;
writing-mode: vertical-lr;

vertical-rl 表示文本是垂直方向(vertical)展示,然后閱讀的順序是從右往左(rl:right-left)链嘀,跟我們古詩的閱讀順序一致萌狂。

vertical-lr 表示文本是垂直方向(vertical)展示,然后閱讀的順序還是默認的從左往右(lr:left-right)怀泊,也就是僅僅是水平變垂直茫藏。

image

IE私有屬性

writing-mode: lr-tb | rl-tb | tb-rl | bt-rl | tb-lr | bt-lr | lr-bt | rl-bt | lr | rl | tb

IE下的屬性特別多,但是需要關注的只有這幾個:

如果是IE8及以上瀏覽器:lr-tb 霹琼、tb-rl 务傲、tb-lr,分別對應于CSS規(guī)范中的 horizontal-tb 枣申、vertical-rl 售葡、vertical-lr`。

如果是IE7瀏覽器:lr-tbtb-rl 分別對應CSS規(guī)范的 horizontal-tbvertical-rl忠藤。

image

css的計算屬性calc()

calc() 可以使用百分比挟伙、em、px和rem單位值計算出一個值應用于元素上模孩,這樣一來你就不用考慮元素DIV的寬度值到底是多少尖阔,而把這個煩人的任務交由瀏覽器去計算。比如說“width:calc(50% + 2em)”榨咐。

calc() 的表達式都寫在括號里介却,支持四則運算,運算符前后要加空格块茁,在IE瀏覽器只能兼容到IE9齿坷。這個屬性最大的用處就不使用box-sizing 的情況下,元素的寬度如果設置為 100% 之后再設置 marginpadding胃夏、border 會導致元素實際寬度大于100%轴或,而使用clae() 屬性可以解決計算的麻煩,直接可以寫為 width: calc( 100% - margin * 2 - padding * 2 - border * 2 )即可算出盒子的實際寬度并應用于元素仰禀。

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末照雁,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子答恶,更是在濱河造成了極大的恐慌饺蚊,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,695評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件悬嗓,死亡現(xiàn)場離奇詭異污呼,居然都是意外死亡,警方通過查閱死者的電腦和手機包竹,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,569評論 3 399
  • 文/潘曉璐 我一進店門燕酷,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人周瞎,你說我怎么就攤上這事苗缩。” “怎么了声诸?”我有些...
    開封第一講書人閱讀 168,130評論 0 360
  • 文/不壞的土叔 我叫張陵酱讶,是天一觀的道長。 經(jīng)常有香客問我彼乌,道長泻肯,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,648評論 1 297
  • 正文 為了忘掉前任慰照,我火速辦了婚禮灶挟,結果婚禮上,老公的妹妹穿的比我還像新娘毒租。我一直安慰自己膏萧,他們只是感情好,可當我...
    茶點故事閱讀 68,655評論 6 397
  • 文/花漫 我一把揭開白布蝌衔。 她就那樣靜靜地躺著榛泛,像睡著了一般。 火紅的嫁衣襯著肌膚如雪噩斟。 梳的紋絲不亂的頭發(fā)上曹锨,一...
    開封第一講書人閱讀 52,268評論 1 309
  • 那天,我揣著相機與錄音剃允,去河邊找鬼沛简。 笑死齐鲤,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的椒楣。 我是一名探鬼主播给郊,決...
    沈念sama閱讀 40,835評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼捧灰!你這毒婦竟也來了淆九?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,740評論 0 276
  • 序言:老撾萬榮一對情侶失蹤毛俏,失蹤者是張志新(化名)和其女友劉穎炭庙,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體煌寇,經(jīng)...
    沈念sama閱讀 46,286評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡焕蹄,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,375評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了阀溶。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片腻脏。...
    茶點故事閱讀 40,505評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖银锻,靈堂內(nèi)的尸體忽然破棺而出永品,到底是詐尸還是另有隱情,我是刑警寧澤徒仓,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布腐碱,位于F島的核電站誊垢,受9級特大地震影響掉弛,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜喂走,卻給世界環(huán)境...
    茶點故事閱讀 41,873評論 3 333
  • 文/蒙蒙 一殃饿、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧芋肠,春花似錦乎芳、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,357評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至睡汹,卻和暖如春肴甸,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背囚巴。 一陣腳步聲響...
    開封第一講書人閱讀 33,466評論 1 272
  • 我被黑心中介騙來泰國打工原在, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留友扰,地道東北人。 一個月前我還...
    沈念sama閱讀 48,921評論 3 376
  • 正文 我出身青樓庶柿,卻偏偏與公主長得像村怪,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子浮庐,可洞房花燭夜當晚...
    茶點故事閱讀 45,515評論 2 359

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