Thuộc tính Transform:
- rotate:
- rotate 2D:
Code HTML:
<div></div> <div class="rotate"></div>Code CSS:
div{ background:red; width:100px; height:100px; float:left; margin: 50px 20px; } .rotate{ transform:rotate(30deg);/* Xoay div theo góc 30 độ */ -webkit-transform:rotate(30deg);/* dùng cho chrome và safari */ -ms-transform:rotate(30deg); /* dùng cho IE 9 trở lên */ }
Kết quả:
- rotate 3D:
Code HTML:
<div></div> <div class="rotateX"> rotate X 180 độ</div> <div class="rotateY"> rotate Y 180 độ</div> <div class="rotateZ"> rotate Z 45 độ</div>Code CSS:
div{ background:red; width:100px; height:100px; float:left; margin: 50px 15px; } .rotateX{ transform:rotateX(180deg);/* Xoay theo phương X một góc 180 độ */ -webkit-transform:rotateX(180deg); -ms-transform:rotateX(180deg); } .rotateY{ transform:rotateY(180deg); /* Xoay theo phương Y một góc 180 độ */ -webkit-transform:rotateY(180deg); -ms-transform:rotateY(180deg); } .rotateZ{ transform:rotateZ(45deg); /* Xoay theo phương Z một góc 45 độ */ -webkit-transform:rotateZ(45deg); -ms-transform:rotateZ(45deg); }
Kết quả:
- Scale:
Giá trị scale của thuộc tính transform cho phép chúng ta phóng to hoặc thu nhỏ đối tượng theo cả chiều ngang và chiều dọc.
Code HTML:
<div></div> <div class="scale">tăng 1,5 lần</div> <div class="scaleXY">tăng chiều rộng 1,5 lần và chiều dọc 2,5 lần</div>
Code CSS:
div{ background:red; width:100px; height:100px; float:left; margin: 100px 30px 0 30px; } .scale{ transform:scale(1.5); -webkit-transform:scale(1.5); -ms-transform:scale(1.5); } .scaleXY{ transform:scale(1.5,2.5); -webkit-transform:scale(1.5,2.5); -ms-transform:scale(1.5,2.5); }
Kết Quả:
- Skew:
Code HTML:
<div class="skew">nghiêng theo trục X và Y một góc 45 độ</div> <div class="skewX">nghiêng theo trục X một góc 45 độ</div> <div class="skewY">nghiêng theo trục Y một góc 45 độ</div>Code CSS:
div{ background:red; width:100px; height:100px; float:left; margin: 100px 30px 0 30px; } .skew{ transform:skew(30deg,30deg); -webkit-transform:skew(30deg,30deg); -ms-transform:skew(30deg,30deg); } .skewX{ transform:skewX(45deg); -webkit-transform:skewX(45deg); -ms-transform:skewX(45deg); } .skewY{ transform:skewY(45deg); -webkit-transform:skewY(45deg); -ms-transform:skewY(45deg); }Kết quả:
- Translate:
Code HTML:
<div></div> <div class="translate">dịch chuyển theo chiều ngang 90px và dọc 30px</div> <div class="translateX">Dịch chuyển theo chiều ngang -90px (sang trái) </div> <div class="translateY">Dịch chuyển theo chiều dọc 90px</div>Code CSS:
div{ background:red; width:100px; height:100px; position:absolute; left: 100px; top:100px; border: 1px solid #111; opacity:0.7; } .translate{ transform:translate(90px,30px); -webkit-transform:translate(90px,30px); -ms-transform:translate(90px,30px); } .translateX{ transform:translateX(-90px); -webkit-transform:translateX(-90px); -ms-transform:translateX(-90px); } .translateY{ transform:translateY(90px); -webkit-transform:translateY(90px); -ms-transform:translateY(90px); }Kết quả:
Transition :
Thuộc tính transition, cho phép xác định một quá trình chuyển đổi của vật thể theo một thời gian được lập trình trước thông qua các giá trị của nó.Các giá trị của transition bao gồm:
- transition-property: xác định các đặc tính css của đối tượng như width, height... các đặc tính được viết cách nhau bởi dấu phẩy (,) , hoặc có thể dùng "all" để xác định tất cả các đặc tính.
- transition-duration: xác định thời gian thực hiện quá trình chuyển đổi thuộc tính css của đối tượng, đơn vị tính là giây (s).
- transition-timing-function: là hiệu ứng của quá trình chuyển đổi, bao gồm các hiệu ứng sau
- ease: hiệu ứng khởi đầu chậm sau đó nhanh dần và kết thúc chậm
- ease-in: hiệu ứng với một khởi đầu chậm chạp
- ease-out: hiệu ứng với một kết thúc chậm
- ease-in-out: hiệu ứng với khởi đầu và kết thúc chậm
- linear: hiệu ứng có cùng một tốc độ từ lúc bắt đầu đến khi kết thúc
- cubic-bezier(n,n,n,n): xác định giá trị của hiệu ứng theo từng giai đoạn, giá trị xác định của từng giai đoạn chỉ có thể từ 0 đến 1.
thuộc tính transition có thể được viêt tắt như sau:
transition: "transition-property" "transition-duration" "transition-timing-function" "transition-delay" ;
ví dụ: div{transition: all 0.6s ease-in-out 0.2s}
nghĩa là khi thuộc tính css của thẻ div thay đổi thì sẽ diễn ra trong thời gian 0.6s với hiệu ứng chậm và có độ trễ là 0.2s
Bây giờ, bạn có thể kết hợp transition và transform để sáng tạo ra những hiệu ứng đẹp mắt cho mình rồi. Các bạn có thể xem thêm một số hiệu ứng css3 đẹp mắt trong những bài viết trước của mình.
Bài viết cũng khá dài, mình xin phép dừng lại tại đây hy vọng qua bài này các bạn sẽ hiểu hơn về CSS3 và vận dụng nó một cách thành thạo hơn.
Cái này nhức đầu quá @@ nhưng dù sao cũng tks bác đã chia sẻ
Trả lờiXóaSản phẩm của e: dây cáp loa Soundking
Cảm ơn bạn, thực sự rất hay và bổ ích
Trả lờiXóaquá tuyệt vời pro ạ
Trả lờiXóa