Hướng dẫn thêm Image Effects với CSS

DEMO

Image Effectsr là các hiệu ứng xử lý đối với hình ảnh, chúng ta có thể sử dụng Image Effects để khiến các hình ảnh trên website trở nên đẹp hơn hoặc đơn giản là để phù hợp với hơn với giao diện website. Trong bài viết này mình sẽ hướng dẫn các bạn thêm hiệu ứng cho hình ảnh, hãy bạn xem ví dụ dưới đây:

Cùng tiến hành nhé!

1. Xây dựng giao diện

Bước đầu tiên là chúng ta sẽ tạo file chạy chính index.html, sau đó các bạn tạo các thành phần của ứng dụng với đoạn mã sau:

Code RUN
<div class="container">
  <h2>Freetuts.net hướng dẫn thêm Image Effects</h2>

  <button onclick="addEffects()" id="btn">Xem hiệu ứng</button>
  <div>
    <h3> Grayscale</h3>
    <img src="https://freetuts.net/upload/tut_post/images/2017/08/02/973/demo.jpg"  id="grayscale" alt="car" width="100%" height="50%">
  </div>
  <div>
    <h3> Blur</h3>
    <img src="https://freetuts.net/upload/tut_post/images/2017/08/02/973/demo.jpg"  id="blur" alt="car" width="100%" height="50%">
  </div>
</div>

Trong ví dụ này mình tạo ra hai hình ảnh giống để ví dụ về hai hiệu ứng khác nhau. Thêm vào đó mình cũng tạo một button để kích hoạt hiệu ứng hình ảnh.

OK giờ chúng ta sẽ chuyển đến bước tiếp theo.

2. Thêm CSS để định dạng các thành phần

Trong bước này chúng ta sử dụng CSS để định dạng cho các thành phần dễ nhìn hơn, các bạn thêm đoạn mã CSS dưới đây vào bên trong thẻ style nhé:

Code RUN
.container {
  width: 700px;
  margin: auto;
  text-align: center;
}
div {
  width: 40%;
  height: 300px;
  margin-bottom: 30px;
  display: inline-block;
}
#btn {
  margin: auto;
  width: 100px;
  height: 30px;
  margin-bottom: 10px;
  display: block;
}
.grayscale {
  -webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
  filter: grayscale(100%);
}
.blur {
  -webkit-filter: blur(5px); /* Safari 6.0 - 9.0 */
  filter: blur(5px);
}

Tất cả các thuộc tính ở đây đều rất đơn giản, các bạn chú ý đến thuộc tính filter: grayscale(100%); và filter: blur(5px); đó chính là thuộc tính quyết định hiệu ứng của hình ảnh.

3. Xử lý với Javascript

Cuối cùng, chúng ta sẽ viết mã script để xử lý quá trình khi click vào button xem hiệu ứng, các bạn thêm đoạn mã script dưới đây vào sau thẻ body:

Code RUN
<script>
  function addEffects(){
    var blur = document.getElementById('blur');
    var grayscale = document.getElementById('grayscale');
    grayscale.classList.add("grayscale");
    blur.classList.add("blur");
  }
</script>

Đoạn mã này cũng rất đơn giản, mình chỉ thêm các class vào để thêm hiệu ứng đã định dạng trước đó bằng CSS.

Vậy là xong rồi, giờ các bạn chạy file index.html để xem kết quả.

4. Lời kết

Qua bài viết này, mình đã hướng dẫn các bạn thêm hiệu ứng cho hình ảnh, hi vọng nó sẽ giúp các bạn có thêm sự lựa chọn khi hiển thị hình ảnh trên website. Nếu có bất cứ thắc mắc gì các bạn hãy để lại ở phần bình luận, hẹn gặp lại trong các bài viết tiếp theo trên freetuts.net

Tham khảo: w3schools.com

Nguồn: freetuts.net

KHÓA HỌC ĐANG GIẢM GIÁ

UNICA - Học jQuery từ cơ bản đến nâng cao

(Giảng viên: )

XEM
UNICA - Bootstrap CSS Framework - CSS & Component

(Giảng viên: )

XEM
UNICA - Học lập trình JAVASCRIPT

(Giảng viên: )

XEM
KYNA - Trang trí website bằng CSS

(Giảng viên: Phó Hải Đăng)

XEM
KYNA - Thiết kế website với HTML

(Giảng viên: Phó Hải Đăng)

XEM