在前端開發(fā)中,我們經(jīng)常會用到背景移動的效果,如背景圖跟隨鼠標(biāo)移動、背景圖循環(huán)滾動、背景圖平移等等。這種效果通過CSS的background-position屬性實現(xiàn)。
該屬性可以設(shè)置背景圖像相對于元素框左上角的位置,它有兩個值:X軸的偏移量和Y軸的偏移量,值可以用像素或百分比表示。當(dāng)只設(shè)置一個值時,另一個值默認(rèn)為0。當(dāng)兩個值都是百分比時,背景圖像的位置會隨著元素的大小而變化。
我們可以通過不同的數(shù)值組合來實現(xiàn)不同的背景移動效果,下面就以一個背景平移效果為例來演示相關(guān)CSS代碼:
.background { background-image: url(/path/to/image.png); background-repeat: no-repeat; background-position: 0 0; animation: pan 10s linear infinite; } @keyframes pan { 0% { background-position: 0 0; } 100% { background-position: -1000px 0; } }
上面這段代碼中,我們定義了一個帶背景圖片的元素,并設(shè)置了圖片不重復(fù)(background-repeat: no-repeat)和初始位置為0。然后,我們使用CSS3的動畫效果(animation)定義了一個名為“pan”的平移動畫,設(shè)置了10秒播放一次、線性緩動、無限循環(huán),并定義了兩個關(guān)鍵幀(@keyframes):0%表示動畫的起始狀態(tài),即位置為0 0;100%表示動畫的結(jié)束狀態(tài),即位置為-1000px 0。運(yùn)行該代碼,就能看到背景圖以10秒一個循環(huán)平移了1000像素。
上一篇html 防止代碼泄露
下一篇背景漸變、 css