摘要:前言魔法堂重新認識和中提到在沒有兄弟盒子時,的左右邊框會與所屬的的左右相接觸。對于的元素若不存在的為的父,其為。正常情況若子尺寸尺寸,則子溢出溢出后的顯示效果由屬性值決定。異常情況下當時,若子的尺寸大于的尺寸而城撐大。
前言
?《CSS魔法堂:重新認識Box Model、IFC、BFC和Collapsing margins》中提到在沒有floated兄弟盒子時,line box的左右邊框會與所屬的containing block的左右content edge相接觸。那到底什么是containing block(abbr. CB)呢?
?containing block在CSS的visual formatting model中十分重要的理論基礎(chǔ),因為盒子的寬/高度自動值/相對值的計算,相對/浮動/絕對定位,均依賴containing block
一圖勝千言
?首先我們關(guān)注一個特殊的CB——initial containing block(abbr. ICB),可以將它作為“備胎”CB,注意是“備胎”而不是最外層的CB,因為CB們不存在嵌套關(guān)系,應該說CB間無任何直接關(guān)系。“備胎”顧名思義是說若盒子對應不上其他CB,至少還有它。"dear, i would be there 4 u 4ever" by ICB:)
?因為CB涉及到盒子的定位,因此我們還要關(guān)注另一個CSS屬性——direction。而ICB的direction則繼承自root element,也就是html元素。
?那ICB的尺寸和定位又是如何呢?ICB尺寸和定位與Viewport一致。說了跟沒說似的:(
?說起Viewport大家應該會想起開發(fā)mobile web時必備的,這句元信息就是用來操作Viewport也就是說會影響到ICB。
?而Viewport的尺寸固定為 瀏覽器的工作區(qū)域尺寸 - 垂直/水平滾動條尺寸
通過JS獲取Viewport的高寬
;(function(exports){ var doc = document, docEl = doc.documentElement, scrollLen = function(tpl){ var muav = null, ret = 0, factory = document.createElement("div") factory.innerHTML = tpl doc.body.appendChild(muav = factory.firstChild) ret = muav.offsetWidth muav.remove() return ret }("文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/115136.html
摘要:更多關(guān)于的信息可參考魔法堂不得不說的因此的實際值則是相對于而言,我們可以通過來獲取和的實際值。對于由于自身有固有的,因此當設(shè)置時,其實際值就是元素固有的。結(jié)果就是除均不為,而為時,會自動計算以滿足等式。兩條不滿足外,其他情況均一致。 前言 當我們以position:absolute之名讓元素脫離Normal flow的控制后,以為通過left和top屬性值即可讓元素得以無限的自由時,卻...
摘要:后來終于知道是某位大神將翻譯為文檔流而已。。。。。。另外單純設(shè)置效果與采用是一樣的魔法堂就這個樣,而浮動定位也是基于。相對定位的最強武器就是個屬性了,好明顯它們默認值均是。 前言 ?剛接觸CSS時經(jīng)常聽到看到一個詞文檔流,那到底什么是文檔流呢?然后會看到絕對定位和浮動定位能脫離文檔流,從這句可以看到文檔流和絕對定位、浮動定位是同一個范疇的概念,再后來在W3C標準文檔找到關(guān)于Absolu...
摘要:到底是何方神圣可以簡單看作是中的。和產(chǎn)生新的特性一樣,無法通過屬性直接設(shè)置,而是通過某些屬性間接開啟這一特性。不同的是某些屬性是以不可逆方式間接開啟為。因此所引發(fā)的問題,很大程度可以理解為在不應該的或沒有預料到的地方產(chǎn)生新的導致的。 前言 過去一直聽說舊版本IE下很多詭異bug均由一個神秘角色引起的,那就是hasLayout。趁著最近突然發(fā)神經(jīng)打算好好學習CSS,順便解答多年來的疑惑。...
摘要:魔法堂重新認識和魔法堂你一定誤解過的魔法堂就這個樣魔法堂說說那個被埋沒的志向深入細節(jié)后會發(fā)現(xiàn)中定位模式之間,和之間存在千絲萬縷的關(guān)系,必須以俯瞰的角度捋一下。當采用時,屬性的實際值會被重置為。由于和則需要通過來引入來提供盒子定位微調(diào)的功能。 前言 ?對于Box Model和Positioning Scheme中3種定位模式的細節(jié),已經(jīng)通過以下幾篇文章記錄了我對其的理解和思考。?《CSS...
摘要:時其寬度始終保持占滿寬度的態(tài)度。清除浮動就是為浮動影響的范圍劃邊界。那么可歸結(jié)為的父容器包裹所有子元素。注意屬性值不能為空白,否則無法清除浮動。 前言 ?定位系統(tǒng)中第一難理解就是Normal flow,而第二就非Float莫屬了,而Float難理解的原因有倆,1. 一開頭我們就用錯了;2. 它跟Normal flow靠得太近了。本文嘗試理清Float的特性和行為特征,若有紕漏望各位指正...
閱讀 1936·2021-10-11 10:59
閱讀 1042·2021-09-07 09:59
閱讀 2235·2021-08-27 16:17
閱讀 2791·2019-08-30 15:54
閱讀 2282·2019-08-30 12:58
閱讀 1783·2019-08-30 12:53
閱讀 1475·2019-08-28 18:13
閱讀 739·2019-08-26 13:35