CSS 中提供了一種定點(diǎn)旋轉(zhuǎn)的方式,可以通過設(shè)置 transform-origin 屬性來實(shí)現(xiàn)。該屬性接受一組數(shù)值,代表旋轉(zhuǎn)點(diǎn)的坐標(biāo)。
例如,以下代碼會將一個正方形繞其左上角頂點(diǎn)(0,0)進(jìn)行旋轉(zhuǎn):
.square { width: 100px; height: 100px; background-color: red; transform-origin: 0 0; animation: rotate 2s infinite; } @keyframes rotate { 100% { transform: rotate(360deg); } }
在上面的代碼中,通過設(shè)置 transform-origin 屬性為 0 0,將旋轉(zhuǎn)點(diǎn)設(shè)置在正方形的左上角。然后使用 animation 屬性來定義一個旋轉(zhuǎn)動畫,讓正方形無限循環(huán)繞旋轉(zhuǎn)點(diǎn)進(jìn)行旋轉(zhuǎn)。
如果想要設(shè)置旋轉(zhuǎn)點(diǎn)在正方形的中心點(diǎn),只需要將 transform-origin 屬性的值設(shè)置為 50% 50% 即可:
.square { width: 100px; height: 100px; background-color: red; transform-origin: 50% 50%; animation: rotate 2s infinite; } @keyframes rotate { 100% { transform: rotate(360deg); } }
通過以上代碼,正方形將會繞著它的中心點(diǎn)進(jìn)行旋轉(zhuǎn)。