Tôi có một <div>
cái mà tôi muốn xoay 90 độ:
<div id="container_2"></div>
Tôi có thể làm cái này như thế nào?
Tôi có một <div>
cái mà tôi muốn xoay 90 độ:
<div id="container_2"></div>
Tôi có thể làm cái này như thế nào?
Câu trả lời:
Bạn cần CSS để đạt được điều này, ví dụ:
#container_2 {
-webkit-transform: rotate(90deg);
-moz-transform: rotate(90deg);
-o-transform: rotate(90deg);
-ms-transform: rotate(90deg);
transform: rotate(90deg);
}
Bản giới thiệu:
(Có bản quay 45 độ trong bản demo, vì vậy bạn có thể thấy hiệu ứng)
Lưu ý: Các -o-
và -moz-
tiền tố là không còn phù hợp và có lẽ không cần thiết . IE9 yêu cầu -ms-
và Safari và trình duyệt Android yêu cầu-webkit-
Cập nhật 2018: Không cần tiền tố nhà cung cấp nữa. Chỉ transform
là đủ. (cảm ơn @rinogo)
transform: rotate(90deg);
cần thiết
Sử dụng theo sau trong CSS của bạn
div {
-webkit-transform: rotate(90deg); /* Safari and Chrome */
-moz-transform: rotate(90deg); /* Firefox */
-ms-transform: rotate(90deg); /* IE 9 */
-o-transform: rotate(90deg); /* Opera */
transform: rotate(90deg);
}
transform: rotate(90deg);
quy tắc. Lý do sẽ là thông thường, bạn muốn các tiêu chuẩn được ưu tiên và trong CSS, định nghĩa cuối cùng luôn luôn thắng.
Sử dụng transform: rotate(90deg)
:
#container_2 {
border: 1px solid;
padding: .5em;
width: 5em;
height: 5em;
transition: .3s all; /* rotate gradually instead of instantly */
}
#container_2:hover {
-webkit-transform: rotate(90deg); /* to support Safari and Android browser */
-ms-transform: rotate(90deg); /* to support IE 9 */
transform: rotate(90deg);
}
<div id="container_2">This box should be rotated 90° on hover.</div>
Nhấp vào "Chạy đoạn mã", sau đó di chuột qua hộp để xem hiệu ứng của biến đổi.
Trên thực tế, không có mục nhập tiền tố khác là cần thiết. Xem Tôi có thể sử dụng Chuyển đổi CSS3 không?
#element{transition: 9999999s}
(mà làm cho mặt sau chuyển đổi sang mất bình thường vĩnh viễn) và #element:hover{transition: .3s}
(hoặc lâu dài tuy nhiên bạn muốn quay đi).