1.有狀態(tài)
修改a標(biāo)簽不同狀態(tài)的樣式
a:link{} 修改從未被訪問過狀態(tài)下的樣式
a:visited{} 修改被訪問過狀態(tài)下的樣式
a:hover{} 修改鼠標(biāo)懸停在a標(biāo)簽上狀態(tài)下的樣式
a:active{} 修改鼠標(biāo)長(zhǎng)按狀態(tài)下的樣式注意點(diǎn):
1、a標(biāo)簽的偽類選擇器可以單獨(dú)出現(xiàn)也可以同時(shí)一起出現(xiàn)
2、a標(biāo)簽的偽類選擇器如果一起出現(xiàn),那么有嚴(yán)格的順序要求,編寫順序必須要遵守愛恨原則 love hate
???????????????????? l(link)ov(visited)e? h(hover)a(active)te
3、如果默認(rèn)狀態(tài)的樣式和被訪問過狀態(tài)的樣式一樣,那么可以縮寫? a:link{color:green;}? a:visited{color:green;}? ? ? ? ? ? ? ? ? ? ?
??????????? ?? ------>可簡(jiǎn)寫為? ? a{color:green;}偽類選擇器練習(xí)ul>(li>a)*5? 快速創(chuàng)建按住tab鍵
1.在實(shí)際開發(fā)中編寫a標(biāo)簽的偽類選擇器最好寫在標(biāo)簽選擇器的后面
2.在實(shí)際開發(fā)中和a標(biāo)簽盒子相關(guān)的屬性都寫在標(biāo)簽選擇器中(顯示模式/寬度/高度/padding/margin)
3.在實(shí)際開發(fā)中和a標(biāo)簽文字/背景相關(guān)的都寫在偽類選擇器中
過度模塊
:hover這個(gè)還可以用在其他的任何標(biāo)簽上
transition-property:width;? 告訴系統(tǒng)哪個(gè)屬性需要執(zhí)行過度效果
transition-duration:5s;告訴系統(tǒng)過度效果持續(xù)的時(shí)長(zhǎng)
過渡三要素 1、必須要有屬性發(fā)生變化
2、必須告訴系統(tǒng)哪個(gè)屬性需要執(zhí)行過渡效果
3、必須告訴系統(tǒng)過渡效果持續(xù)時(shí)長(zhǎng)
注意點(diǎn):當(dāng)多個(gè)屬性需要同時(shí)執(zhí)行過渡效果時(shí)用逗號(hào)隔開即可
其它屬性
transition-delay:2s;告訴系統(tǒng)延遲多少秒之后才開始過度動(dòng)畫
transition-timing-function:linear/ease/ease-in/ease-out/ease-in-out? 告訴系統(tǒng)過渡動(dòng)畫的運(yùn)動(dòng)的速度
linear:勻速
ease:逐漸慢下來
ease-in:加速
ease-out:減速
ease-in-out:先加速后減速
連寫
transition:property(過渡屬性) duration(過渡時(shí)長(zhǎng)) timing-function(運(yùn)動(dòng)速度) delay(延遲時(shí)間);
連寫注意點(diǎn):
1、多個(gè)屬性要過渡時(shí)用,隔開
transition:property duration timing-function delay,property duration timing-function delay;
2、連寫的時(shí)候可以省略后面的2個(gè)參數(shù),因?yàn)橹灰帉懥饲懊娴膬蓚€(gè)參數(shù)就已經(jīng)滿足了過渡的三要素。
3、如果多個(gè)屬性運(yùn)動(dòng)的速度/延遲時(shí)間/持續(xù)時(shí)間都一樣,那么可以簡(jiǎn)寫為
transition:all 0s;
改變margin 水平方向的值可以實(shí)現(xiàn)彈簧效果
修改了誰的屬性 就在誰里面添加過渡
編寫過渡套路:1、不要管過渡,先編寫基本的界面。
2、修改我們認(rèn)為需要修改的屬性。
3、再回過頭去給被修改屬性的哪個(gè)元素添加過渡即可。
誰更具體 誰的優(yōu)先級(jí)更高