1顿锰、塊元素蛔糯、內(nèi)聯(lián)元素陈瘦、內(nèi)聯(lián)塊元素都是可以改變的幌甘,使用display就可以改變排布方式。display:block\inline\inline-block痊项。內(nèi)聯(lián)元素是沒法設(shè)置寬高的锅风,而塊元素可以設(shè)置。
2鞍泉、塊元素都是占領(lǐng)父元素100%的可以設(shè)置寬高皱埠,從上到下排布,內(nèi)聯(lián)元素是自己的內(nèi)容寬度不可以設(shè)置寬高咖驮,從左到右排布边器。
3训枢、position:fixed 是針對整個body來進(jìn)行的,相當(dāng)于添加到了window上面饰抒,里面的內(nèi)容怎么去滾動也不會影響fixed的位置肮砾。position:relative就不針對要有固定屬性的限制了,是根據(jù)正常文檔流的偏移位置袋坑,但是需要注意一點仗处,雖然進(jìn)行了設(shè)置偏移,但是原有的位置不會改變枣宫,什么意思呢婆誓?就是原先挨著這個元素的其他元素還是按照原先的位置進(jìn)行排列,不會用relative后的位置進(jìn)行排布也颤,這個需要特別注意洋幻。position:absolute,相對于離著最近的具有position屬性的父包含塊進(jìn)行定位(這個相當(dāng)于Android中的相對布局),記住了父元素一定要有position啊啊啊啊翅娶。
4文留、在html里面位置都需要固定的,如果位置沒有固定竭沫,那么就會按照既定的布局方式進(jìn)行布局燥翅。
5、html設(shè)置居中的時候蜕提,內(nèi)聯(lián)元素就要對父元素設(shè)置text-align:center森书。定寬塊元素的時候,使用margin:auto就可以居中谎势。不定長的塊元素居中凛膏,是通過把父元素設(shè)置為一半,然后子元素向右偏移50%脏榆,這50%就是父元素的百分比猖毫,這樣就居中了。
6须喂、以sticky footer為例子, flex column的時候,設(shè)置高度其實約束的是最小的高度是多少,如果溢出得話,就是簡單的進(jìn)行向下排布,下面的ui會被排到后面.
7鄙麦、flex三個參數(shù)簡單的理解是,? 是否放大? 是否縮小? 默認(rèn)大小? ,和ios的自動布局相似,如果有空間的時候是否放大,如果空間不足的時候是否縮小,默認(rèn)大小就是字面意思.
8、加深理解float镊折, float是跳出排布流胯府,浮動出來,主要有兩點需要注意第一是當(dāng)其他的標(biāo)簽可能和float的標(biāo)簽重疊的時候恨胚,clear會指定其他標(biāo)簽不能有float骂因,可以簡單理解為其他不支持有人在我上面浮動,例子是footer和aside赃泡,aside是浮動并且高度比main要高寒波,那么aside就會和footer進(jìn)行重疊乘盼,如果footer設(shè)置了clear就會排在aside下面。
9俄烁、加深理解position绸栅,可以分為4種 static(默認(rèn)) 、absolute页屠、fixed粹胯、relative四種定位方式,absolute是相對于頁面進(jìn)行定位辰企,會固定標(biāo)簽的位置一般也使用這個风纠,fix是相對瀏覽器窗口進(jìn)行定位,但是不會動了牢贸,和absolute的區(qū)別就是竹观,假如現(xiàn)在滾動 absolute標(biāo)簽是能跟著滾動的,而fixed標(biāo)簽是固定不定的潜索,這兩種已經(jīng)跳出了排布流臭增,也就是別的標(biāo)簽的排布和這倆是沒關(guān)系的。relative則沒有跳出排布流竹习,只是在原來排布流的位置進(jìn)行偏移速址。