日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

css实现图片旋转,并设置旋转点

發布時間:2024/2/28 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 css实现图片旋转,并设置旋转点 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這個也卡了我一小會,主要還是因為不是前端的孩子。。。

先做一點技術上的知識普及:

實例

旋轉 div 元素:

div { transform:rotate(7deg); -ms-transform:rotate(7deg); /* IE 9 */ -moz-transform:rotate(7deg); /* Firefox */ -webkit-transform:rotate(7deg); /* Safari 和 Chrome */ -o-transform:rotate(7deg); /* Opera */ }

親自試一試

頁面底部有更多實例。

瀏覽器支持

IEFirefoxChromeSafariOpera
?????

Internet Explorer 10、Firefox、Opera 支持 transform 屬性。

Internet Explorer 9 支持替代的 -ms-transform 屬性(僅適用于 2D 轉換)。

Safari 和 Chrome 支持替代的 -webkit-transform 屬性(3D 和 2D 轉換)。

Opera 只支持 2D 轉換。

定義和用法

transform 屬性向元素應用 2D 或 3D 轉換。該屬性允許我們對元素進行旋轉、縮放、移動或傾斜。

為了更好地理解 transform 屬性,請查看這個演示。

默認值:繼承性:版本:JavaScript 語法:
none
no
CSS3
object.style.transform="rotate(7deg)"

語法

transform: none|transform-functions; 值描述測試
none定義不進行轉換。測試
matrix(n,n,n,n,n,n)定義 2D 轉換,使用六個值的矩陣。測試
matrix3d(n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n)定義 3D 轉換,使用 16 個值的 4x4 矩陣。?
translate(x,y)定義 2D 轉換。測試
translate3d(x,y,z)定義 3D 轉換。?
translateX(x)定義轉換,只是用 X 軸的值。測試
translateY(y)定義轉換,只是用 Y 軸的值。測試
translateZ(z)定義 3D 轉換,只是用 Z 軸的值。?
scale(x,y)定義 2D 縮放轉換。測試
scale3d(x,y,z)定義 3D 縮放轉換。?
scaleX(x)通過設置 X 軸的值來定義縮放轉換。測試
scaleY(y)通過設置 Y 軸的值來定義縮放轉換。測試
scaleZ(z)通過設置 Z 軸的值來定義 3D 縮放轉換。?
rotate(angle)定義 2D 旋轉,在參數中規定角度。測試
rotate3d(x,y,z,angle)定義 3D 旋轉。?
rotateX(angle)定義沿著 X 軸的 3D 旋轉。測試
rotateY(angle)定義沿著 Y 軸的 3D 旋轉。測試
rotateZ(angle)定義沿著 Z 軸的 3D 旋轉。測試
skew(x-angle,y-angle)定義沿著 X 和 Y 軸的 2D 傾斜轉換。測試
skewX(angle)定義沿著 X 軸的 2D 傾斜轉換。測試
skewY(angle)定義沿著 Y 軸的 2D 傾斜轉換。測試
perspective(n)為 3D 轉換元素定義透視視圖。測試

?

然后大家在做的時候大多遇到的問題時,這個起始點,也就是旋轉點的問題。我想讓他這樣轉,他為什么就不聽話呢?

這就要說說,transform origin

實例

設置旋轉元素的基點位置:

div { transform: rotate(45deg); transform-origin:20% 40%;-ms-transform: rotate(45deg); /* IE 9 */ -ms-transform-origin:20% 40%; /* IE 9 */-webkit-transform: rotate(45deg); /* Safari 和 Chrome */ -webkit-transform-origin:20% 40%; /* Safari 和 Chrome */-moz-transform: rotate(45deg); /* Firefox */ -moz-transform-origin:20% 40%; /* Firefox */-o-transform: rotate(45deg); /* Opera */ -o-transform-origin:20% 40%; /* Opera */ }

親自試一試

頁面底部有更多實例。

瀏覽器支持

IEFirefoxChromeSafariOpera
?????

Internet Explorer 10、Firefox、Opera 支持 transform-origin 屬性。

Internet Explorer 9 支持替代的 -ms-transform-origin 屬性(僅適用于 2D 轉換)。

Safari 和 Chrome 支持替代的 -webkit-transform-origin 屬性(3D 和 2D 轉換)。

Opera 只支持 2D 轉換。

定義和用法

transform-origin 屬性允許您改變被轉換元素的位置。

2D 轉換元素能夠改變元素 x 和 y 軸。3D 轉換元素還能改變其 Z 軸。

為了更好地理解 transform-origin 屬性,請查看這個演示。

Safari/Chrome 用戶:為了更好地理解 transform-origin 屬性用于 3D 轉換的情況,請查看這個演示。

注釋:該屬性必須與?transform?屬性一同使用。

為了更好地理解 transform 屬性,請查看這個演示。

默認值:繼承性:版本:JavaScript 語法:
50% 50% 0
no
CSS3
object.style.transformOrigin="20% 40%"

語法

transform-origin: x-axis y-axis z-axis; 值描述
x-axis

定義視圖被置于 X 軸的何處。可能的值:

  • left
  • center
  • right
  • length
  • %
y-axis

定義視圖被置于 Y 軸的何處。可能的值:

  • top
  • center
  • bottom
  • length
  • %
z-axis

定義視圖被置于 Z 軸的何處。可能的值:

  • length

最后,給大家呢演示一個實例demo:

原始圖片為一個黑色正方形,我們希望它根據左上角的頂點進行旋轉:

圖片:

源碼:

<!DOCTYPE html> <html><head><meta charset="UTF-8"><title></title><style type="text/css">img{margin-top: 200px;margin-left: 500px;width: 100px;height: 100px;display: block;animation: rotate 6s linear infinite;transform-origin:0 0;}@keyframes rotate{0%{transform: rotate(0deg);}100%{transform: rotate(360deg);}}</style></head><body><img src="img/圖片.png" /></body> </html>

?效果展示:

你自行復制代碼吧。。。!!!?

總結

以上是生活随笔為你收集整理的css实现图片旋转,并设置旋转点的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。