偽類偽元素區別
· 相同點:都是屬于選擇器中的一種,能實現對于頁面元素的修飾
· 不同點:
o 1、概念不同:偽類:用于已有元素處于某種狀態時為其添加對應的樣式,這個狀態是根據用戶行為而動態變化的;例如鼠標的懸停效果;偽元素:用于創建一些不在DOM樹中的元素,并為其添加樣式;例如:先前向后插入元素內容等等
o 2、使用方法不同:css3規范中要求使用雙冒號(::)表示偽元素,以此來區分偽類和偽元素,比如::before和::after等偽元素使用雙冒號(::),:hover和:active偽類使用單冒號(:)目前來看有一部分瀏覽器為了達到一個更好的兼容性的問題,我們的雙冒號也可以寫成單冒號;但是在一些低版本瀏覽器里面有些時候還是需要使用雙冒號的
為什么無法定義1px左右高度的容器
高版本瀏覽器里面是能夠定義1px的高度的容器的 但是由于瀏覽器的版本和瀏覽器的內核不一樣導致低版本瀏覽器中的兼容性不一樣 在低版本 IE6瀏覽器下面,容易出現這個問題,產生問題的原因是因為默認的行高造成的, 解決的方法也有很多,例如:overflow:hidden | zoom:0.08 | line-height:1px
現在想調節—下父元素的透明度,但是又不影響子元素的透明度,怎么破?
- 原因分析:
- 使用css的opcity屬性改變某個元素的透明度,但是其元素下的子元素的透明度也會被改變,即便重定義也沒有用,不過有個方法可以實現,大家可以看看。
可以使用一張透明的圖片做背景可以達成效果,但是有沒有更簡單的方法呢?使用 RGBA。
- 例如:
- 設置父元素opacity:0.5,子元素不設置opacity,子元素會受到父元素opacity的影響,也會有0.5的透明度。
即使設置子元素opacity:1,子元素的opacity:1也是在父元素的opacity:0.5的基礎上設置的,因此子元素的opacity還是0.5。
- 解決方法:
- 為父元素設置background: rgba(0,0,0,0.5)。
更多關于“web前端培訓”的問題,歡迎咨詢千鋒教育在線名師。千鋒教育多年辦學,課程大綱緊跟企業需求,更科學更嚴謹,每年培養泛IT人才近2萬人。不論你是零基礎還是想提升,都可以找到適合的班型,千鋒教育隨時歡迎你來試聽。