Cascading Style Sheets

Bóng đổ cho phần tử với box-shadow

Thuộc tính box-shadow ứng dụng để đổ bóng box phần tử, trình duyệt tạo bóng bằng cách:

  • Chiều dài của phần tử được tịnh tiến một giá trị
  • Chiều cao của phần tử được tịnh tiến một giá trị
  • Thiết lập màu cho đoạn tịnh tiến

Cú pháp cơ bản như sau:

box-shadow: none;   /* không tô bóng box */
box-shadow: offset-x offset-y blur-radius? spread-radius? color?;
box-shadow: inset offset-x offset-y blur-radius? spread-radius? color?;

Trong đó tham số có dấu ? là tùy chọn, có thể không thiết lập. Ý nghĩa của các tham số:

  • offset-x: khoảng dịch đổ bóng chiều x
  • offset-y: khoảng dịch đổ bóng chiều y
  • blur-radius: bán kính mờ
  • spread-radius: bán kính mở rộng
  • color: màu đổ bóng
  • inset: bóng sẽ tô trong box

Công cụ tạo bóng đổ cho box phần tử



Mã CSS (copy và sử dụng):

    

Ví dụ:

    box-shadow: 10px 10px #888888;

Tạo box bóng, dịch trái 10px dịch xuống 10px và tô bóng bằng màu #888888

<style>
    div.exam1 {
        width: 300px;
        height: 100px;
        background-color: #9ACD32;
        box-shadow: 10px 10px #888888;
    }
</style>

<div class="exam1"></div>

Bóng mờ blur

Ngoài thiêt lập 2 giá trị dịch theo x, y còn có thể tùy chọn thêm giá giá trị bóng mờ blur và mở rộng spread

box-shadow: 10px 10px 5px 5px #888888;
<style>
    div.exam2 {
        width: 300px;
        height: 100px;
        background-color: #9ACD32;
        box-shadow: 10px 10px 5px 5px #888888;
    }
</style>
<div class="exam2"></div>

Các giá trị âm

Bạn thiết lập các giá trị thuộc tính trong box-shadow các giá trị âm, chiều sẽ ngược lại

box-shadow: -10px -10px 5px -5px #888888;
<style>
    div.exam3 {
        width: 300px;
        height: 100px;
        background-color: #9ACD32;
        box-shadow: -10px -10px 5px -5px #888888;
    }
</style>

<div class="exam3"></div>

Kỹ thuật dùng inset tô bóng đổ bên trong

Bóng đổ bên trong sử dụng thêm giá trị inset

box-shadow: inset 10px 10px 5px #888888;
<style>
    div.exam4 {
        width: 300px;
        height: 100px;
        background-color: #9ACD32;
        box-shadow: inset 10px 10px 5px #888888;
    }
</style>
<div class="exam4"></div>

Bạn có thể tạo ra nhiều lớp tô, kết hợp cả inset và outset, cách nhau bởi dấy phảy: box-shadow: inset 10px 10px 5px #888888,outset 10px 10px 5px #888888;

<style>
    div.exam5 {
        width: 300px;
        height: 100px;
        background-color: #9ACD32;
        box-shadow: inset 10px 10px 5px #888888, 10px 10px 5px #888888;
    }
</style>

<div class="exam5"></div>

Tạo ra nhiều lớp bóng đổ

box-shadow có thể tạo ra nhiều lớp tô bóng, mỗi lớp cách nhau bằng dấu phảy

<style>
    div.exam6 {
        margin: 50px;
        width: 300px;
        height: 100px;
        background-color: #9ACD32;
        box-shadow:
                0 0 10px 4px #FF6347,
                0 0 10px 30px #FFDAB9,
                30px 0 20px 30px #B0E0E6;
    }
</style>

<div class="exam6"></div>

Đăng ký nhận bài viết mới