css中幾個重要概念

2022-08-05 12:33:18 字數 1511 閱讀 7162

例如"瀏覽器會根據標籤的src屬性的值來讀取資訊並顯示,瀏覽器會根據input標籤的type屬性來決定是顯示輸入框還是單選按鈕

shashi

在css中,有時一個元素的位置和尺寸的計算都相對於一個矩形,這個矩形被稱作包含塊。包含塊是一個相對的概念,比如子元素的初始化佈局總是在父元素的左上角,這就是一個相對的概念。每個元素都會生成一個包含塊,但這個包含塊是虛無的,你看不到也摸不著,只是一個概念。包含塊吧並不會限制它裡面元素的大小,如果裡面的元素比包含塊大,那麼超出的部分就會被溢位。一個元素的位置和尺寸與它的包含塊息息相關,而元素會為它的子孫元素建立包含塊,但這並不代表這個包含塊就是它的父元素(不過這個父元素確實和包含塊有著一些聯絡)。在某些情況下,我們可以將包含塊理解為父元素。

包含塊的建立

父元素或祖先元素沒有定位時

父元素或祖先元素定位值為relative

父元素或祖先元素定位值為absolute

父元素或祖先元素定位值為fixed

當祖先元素時行內元素時,若direction值為ltr則右邊補空白,若direction值為rtl則左邊補空白

direction:ltr

direction:rtl

控制框主要指display的屬性所形成的框,包括塊框,匿名塊框,行內框,匿名行內框,插入框(run-in).

display的一些屬性:

1.塊級元素與塊框

其中可以產生塊元素的值為block,list-item,run-in,table。塊級元素除了table外都會形成一個主塊框,並且這個主塊框只包含一個型別的框,就是說裡面要麼是塊框,要麼是行內框。主塊框會為子孫元素建立包含塊,生成內容。主塊框參與塊級格式化上下文。某些塊級元素還會在主塊框之外生成額外的框,比如當某個元素的display值為list-item時,它會生成一個額外的框用來放置那些標誌,比如li元素前面的標誌

2.匿名塊框

這是一段內容

div包括了一段文字和一個塊框(p),此時div似乎既包括了行內框,又包括了一個塊框,那麼它會將所有的行內框都包含在一個匿名塊框之中

3.行內框

可以產生行內元素的值為inline,inline-table,run-in

4.匿名行內框

這是一段內容

div包括了一段文字和一個em元素,此時div似乎包含的都是一個行內框,那麼它會為這段文字生成一個匿名行內框。在格式化table時,會形成更多的匿名行內框。

5.插入框(run-in)

如果一個元素的display值為run-in,那麼它會根據後面的元素來確定它的型別應該是什麼。這個屬性在新的chrome版本中已經移除了,可以不用關注該屬性了。

本文**於猿2048:css中幾個重要概念

幾個重要的概念

1 服務 服務是一個個的介面,介面約定了服務,從而使隨意替換服務的實現對使用介面服務的 沒有任何的影響。像我們上面例子中的ilog,ilog...

Nginx重要概念之pipeline

什麼是pipeline? pipeline是http1 1引入的新特性,流水線作業,是keepalive長連線的昇華,可以實現一個連線做多次請求。 pipeline與keepalive的區別 當客戶端提交多個請求的時候,keepalive場景下,第二個請求必須等到第一個請求響應接收完全後才能發起,跟...

Docker01 重要概念

docker是什麼 docker是以容器技術為核心的一套應用的構建,分發,執行的體系和生態。 docker 的優點 對開發和運維來說,最希望的是一次構建或配置,可以在任意地方正常執行。 例如 開發者可以使用一個標準的映象來構建一套開發容器,開發完成之後,運維人員可以直接使 用這個容器來部署 。doc...