css學習歸納總結(三)

2021-06-28 00:03:10 字數 4187 閱讀 9188

行內樣式是寫在html標籤的style屬性裡的,比如:

hello everyone!

行內樣式會覆蓋嵌入樣式和鏈結樣式。

嵌入的css樣式是放在html文件的head元素中的,這點想必大家都知道,這裡就不贅述了。

鏈結樣式的作用範圍可以是整個**。只要使用標籤把樣式表鏈結到每個頁面,相應的頁面就可以使用其中的樣式,除了link方法外,還可以使用@import指令

@import  url(css/style.css);
@import指令必須出現在樣式表中其他樣式之前,否則該鏈結的檔案不會被載入

使用繼承方式降低你的css**量:

所有元素可繼承:visibility和cursor

內聯元素和塊元素可繼承:letter-spacing、word-spacing、white-space、line-height、color、font、 font-family、font-size、font-style、font-variant、font-weight、text- decoration、text-transform、direction

塊狀元素可繼承:text-indent和text-align

列表元素可繼承:list-style、list-style-type、list-style-position、list-style-image

**元素可繼承:border-collapse

不可繼承的:display、margin、border、padding、background、height、min-height、max- height、width、min-width、max-width、overflow、position、left、right、top、 bottom、z-index、float、clear、table-layout、vertical-align

每乙個元素都會在頁面上生成乙個盒子,因此,html頁面實際上就上由一堆盒子組成的。預設情況下,每個盒子的邊框是不可見的,背景也是透明的。

1. 寬度(border-width):可以使用`thin、medium`和`thick`等文字值,也可以使用除百分比和負值之外的任何絕對值

2. 樣式(border-style):有none、hidden、dotted、dashed、double、groove、ridge、inset和outset等

3. 顏色(border-color):可以使用任意顏色值,包括rgb、hsl、十六進製制顏色值和顏色關鍵字

垂直方向上的外邊距會疊加,假設有3個段落,前後相接,而且都應用以下規則:

第一段的下外邊距與第二段的上外邊距相鄰,你可能認為它們之間的外邊距是80px,但實際的間距卻是50px。像這樣的上下外邊距相遇時,它們就會相互重疊,直至乙個外邊距碰到另乙個元素的邊框。因此,在這裡,第二段較寬的上外邊距就會碰到第一段的邊框。也就是說,較寬的外邊距決定兩個元素最終離多遠。這個過程就是外邊距疊加

盒模型結論一:

為設定了寬度的盒子新增邊框、內間距和外邊距,會導致盒子擴充套件得更寬。實際上,盒子的width屬性設定的只是內容區的寬度,而非盒子要佔據的水平寬度

從現在開始,「元素」和「盒子」從現在起代表了同乙個意思。如果我們不設定塊級元素的width屬性,那麼這個屬性的預設值是auto,結果會讓元素的寬度擴充套件到與父元素等寬。

盒模型結論二:

沒有設定width屬性的元素始終會擴充套件到填滿其父元素的寬度為止。新增水平邊框、內邊距和外邊距,會導致內容寬度減少,減少的量 等於 水平邊框、內邊框和外邊距的和

看例項的話大家也比較煩,就拿著這個結論自己去驗證下吧。

多欄布局有三種基本的實現方案:固定寬度、流動、彈性。

- 固定寬度布局的大小不會隨著使用者調整瀏覽器視窗大小而變化,一般是900到1350px畫素寬。其中960畫素最常見,因為這個寬度適合所有現代顯示器,而且能被16,12,10,8,6,5,4和3整除,容易計算等寬分欄。

- 流動布局的大小會隨使用者調整瀏覽器視窗大小而變化。這種布局能更好地適應大螢幕,但同時也意味著放棄會頁面某些方面的控制,比如隨著頁面寬度變化,文字行的長度和頁面元素之間的位置關係都可能變化。

- 彈性布局是在瀏覽器視窗變寬時,不僅布局變寬,而且所有內容元素的大小也會變化,不過這種布局太過複雜,不好實現。

並不是所有的屬性對行內元素都能夠生效

行內元素不會應用width屬性,其長度是由內容撐開的

行內元素不會應用height屬性,其高度也是由內容撐開的,但是高度可以通過line-height調節

行內元素的padding屬性只用padding-left和padding-right生效,padding-top和padding-bottom會改變元素範圍,但不會對其它元素造成影響

行內元素的margin屬性只有margin-left和margin-right有效,margin-top和margin-bottom無效

行內元素的overflow屬性無效

行內元素的vertical-align屬性無效(height屬性無效)

csssprites是指把網頁中很多小(很多圖示檔案)做成按規律排列的一張大圖上,在顯示的時候通過background-image、background-position顯示特定部分達到和分散的一張張小一樣的效果。

使用css sprites,會將所有的小整合到一張中,網頁載入只需要對一張進行請求,css再通過座標的形式定位每乙個小顯示出來。這樣做的好處是,大大減少http請求數,提高網頁載入速度。

css sprites工具推薦:

隱藏網頁元素的方法有很多,比如設定display:none,或是使用全透明(opacity)。在設定文字的時候,有時並不希望文字丟失,而通常是把文字轉移到螢幕外面,瀏覽器是可以檢測到的。

有如下兩種隱藏文字的方式:

1. 使用text-indent隱藏:替換文字、搜尋引擎優化
h1上設定logo為背景並設定居中來做seo

h1
p
rgba()opacity都能實現透明效果,但最大的不同是opacity作用於元素,以及元素內的所有內容的透明度,

rgba()只作用於元素的顏色或其背景色。(設定rgba透明的元素的子元素不會繼承透明效果!)

ie使用margin-left來縮排列表,而safari和firefox使用padding-left

ol, ul
而ie的預設樣式是:

ol, ul
去除li的左邊距,比如:

ol, ul
或者也可以只針對ie進行修復:

ol, ul
不寫具體介紹啦 截個圖給你們吧 說再多都比不上一張圖呢

enjoycss 能建立活躍,超棒的例項,enjoycss 生成器大大簡化了自定義類宣告。enjoycss 是眾多css工具中非常有用的,也是開發者和設計師工具箱必備的利器之一。它能加快工作流,簡單易用,不需要編碼就能整合豐富的圖形樣式到簡單的ui

css3生成器

css3 maker

hands on css3

html5/css3 box

瀏覽器hacks技巧

html5/css3瀏覽器支援表

overapi--齊全的api文件

CSS歸納總結

選擇器的分組 css選擇器分為 1.群組選擇器 如 p,body,img,div 2.兄弟選擇器 如 p p 3.屬性選擇器 如 p title 4.包含 後代 選擇器 如 body ulli 5.子元素選擇器 如 div p 6.id選擇器 如 mydiv 7.類選擇器 如 class1 8.偽元...

學習CSS總結(三)

我們最常用的的就是 absolute 和 relative 兩種方式,所以主要討論著兩者的區別。相對定位我們主要是要知道相對於誰來進行偏移的?其實相對定位是相對於元素自己的本身的位置,我們來看一下例子 這是乙個巢狀的div,乙個父div parent,包含兩個子div sub1 和 sub2,由於兩...

DFS學習歸納總結

看了幾次題,dfs還是用的比較多的一種演算法,上次做阿里的程式設計題也是深搜加剪枝。太久沒寫了,大學學的一點皮毛也都荒廢了。這篇部落格寫的很好,偽 也清晰明了 深度優先搜尋 dfs 演算法入門 c dfs核心偽 前置條件是visit陣列全部設定成false param n 當前開始搜尋的節點 par...