1.元素寬度高度能不寫就不寫,注意默認(rèn)寬度,塊級元素寬度默認(rèn)父元素寬度(絕對定位和固定定位中默認(rèn)為元素的寬度 邊框+內(nèi)邊距+內(nèi)容),默認(rèn)高度都是元素的高度,可以由子元素高度來撐起
2.文字標(biāo)簽在書寫文檔文件(html wxml)時,注意空格和回車會導(dǎo)致標(biāo)簽在瀏覽器里有空格和回車換行,例如css?<text >刀具庫管理員</text>,
跟 <text >
? ? ? ? 刀具庫管理員
? </text>
在text開啟換行模式后,會導(dǎo)致二者的樣式下,由于換行問題,text標(biāo)簽高度不一樣
3.浮動元素不能撐開父元素高度,可能導(dǎo)致父元素高度問題
? ? 解決辦法1、給父元素也添加float。這樣讓父元素與子元素一起脫離文檔流浮動起來,保證子元素在父元素內(nèi),這樣父元素就能自適應(yīng)子元素的高度,但是此方法有一弊端,一定會影響父元素之后的元素排列,甚至影響布局。
解決辦法2、給父元素一個固定高度,此方法適用于子元素高度已知并且固定的情況。
解決辦法3、添加一個塊級元素,并給此元素設(shè)置clear:both;清除浮動。在很早之前用的就是這種解決辦法,新建一個空的div,為這個div設(shè)置clear:both;這樣無疑是增加了無意義的標(biāo)簽,一個大型頁面中,這種標(biāo)簽太多是不好的。
解決辦法4、給父元素添加 overflow:hidden;overflow:hidden的作用:
? ? ? ? ? ?*隱藏溢出,當(dāng)內(nèi)容超過其父元素時,可以使用該屬性和值將溢出的部分裁剪掉,使頁面更加美觀
? ? ? ? ? ?*清除浮動,當(dāng)子元素浮動時,給父元素添加overflow:hidden,按照它的第一個特性,應(yīng)該將子元素超出的部分截掉,但是因為子元素有浮動,無法裁剪,所有只能由父元素增加高度去包裹住子元素,使得父元素?fù)碛辛烁叨?,而這個高度是跟隨子元素自適應(yīng)的高度,這樣就把浮動的子元素包含在父元素內(nèi)了。
解決辦法5、通過偽類::after清除浮動 利用偽類來清楚浮動,其效果跟創(chuàng)建一個空的div并設(shè)置其為clear:both;是一樣的,只不過這里用偽類代替了空的div元素