Hot Post

Tạo Tab nội dung đơn giản bằng CSS3 cho Blogger


Pure CSS3 Tab Effects

Tab hay Thẻ có thể là một chức năng vừa lạ, vừa quen. Hàng ngày khi bạn lướt web chắc các bạn đã khá quen thuộc với chức năng tab mới của các trình duyệt. Hôm nay chúng ta sẽ đem chức năng tab này vào Blogger, có thẻ giúp cho các bạn tiết kiệm được khá nhiều diện tích trên trang khi chúng ta sẽ phân bổ các nội dung lần lượt vào các tab.

Tab nội dung đơn giản bằng CSS3

Giới thiệu đôi nét

- Tính năng tạo tab bằng CSS3 này được thực hiện bởi @SoClear.
- Do làm hoàn toàn bằng CSS3 nên sẽ không gây ảnh hưởng đến hiệu suất tải trang của website bạn.
- Có 5 effect tất cả. Chúng ta sẽ có CSS chung cho cả 5 effect.
- Để chuyển đổi giữa các effect bạn hãy thay số của đoạn code tab-title (từ 1 đến 5) ở bước HTML <div class="tabs effect-1"> tương ứng với các effect mà bạn muốn đổi.
- Bắt tay vào thực hiện nào.

CSS

1Vào Mẫu >> Chỉnh sửa HTML và dán đoạn CSS dưới đây trước thẻ ]]></b:skin>
*{padding:0;margin:0;list-style:none;box-sizing:border-box;outline:none;font-weight:normal}
.tabs{background:#fff;position:relative}
.tabs > input,.tabs > span{width:20%;height:60px;line-height:60px;position:absolute;top:0}
.tabs > input{cursor:pointer;filter:alpha(opacity=0);opacity:0;position:absolute;z-index:99}
.tabs > span{background:#f0f0f0;text-align:center;overflow:hidden}
.tabs > span i,.tabs > span{-webkit-transition:all .5s;-moz-transition:all .5s;-o-transition:all .5s;transition:all .5s}
.tabs > input:hover + span{background:rgba(255,255,255,.1)}
.tabs > input:checked + span{background:#fff}
.tabs > input:checked + span,.tabs > input:hover + span{color:#3498DB}
#tab-1,#tab-1 + span{left:0}
#tab-2,#tab-2 + span{left:20%}
#tab-3,#tab-3 + span{left:40%}
#tab-4,#tab-4 + span{left:60%}
#tab-5,#tab-5 + span{left:80%}
.tab-content{padding:80px 20px 20px;width:100%;min-height:340px}
.tab-content section{width:100%;display:none}
.tab-content section h1{margin-top:15px;font-size:100px;font-weight:100;text-align:center}
#tab-1:checked ~ .tab-content #tab-item-1{display:block}
#tab-2:checked ~ .tab-content #tab-item-2{display:block}
#tab-3:checked ~ .tab-content #tab-item-3{display:block}
#tab-4:checked ~ .tab-content #tab-item-4{display:block}
#tab-5:checked ~ .tab-content #tab-item-5{display:block}
/* effect-1 */
.effect-1 > input:checked + span{background:#fff}
/* effect-2 */
.effect-2 span i{padding-right:15px}
@media (max-width:600px){.effect-2 span span{display:none}.effect-2 span i{padding:0}}
/* effect-3 */
.effect-3 .line{background:#3498DB;width:20%;height:4px;position:absolute;top:56px}
#tab-1:checked ~ .line{left:0}
#tab-2:checked ~ .line{left:20%}
#tab-3:checked ~ .line{left:40%}
#tab-4:checked ~ .line{left:60%}
#tab-5:checked ~ .line{left:80%}
/* effect-4 */
.effect-4 span i{font-size:18px;display:block;position:absolute;left:50%;top:0;opacity:0;transform:translateX(-50%)}
.effect-4 span span{position:relative;top:10px}
.effect-4 > input:checked + span i,.effect-4 > input:hover + span i{top:20%;opacity:1}
/* effect-5 */
.effect-5 > input:checked + span i,.effect-5 > input:hover + span i{font-size:25px}

HTML

1Khi viết bài bạn hãy chuyển sang tab HTML và dán nội dung dưới đây vào. Hoặc các bạn cũng có thể tạo tab trên các widget HTML/Javascript đều được.
<div class="tabs effect-1">
  <!-- tab-title -->
  <input type="radio" id="tab-1" name="tab" checked="checked">
  <span href="#tab-item-1">Home</span>

  <input type="radio" id="tab-2" name="tab">
  <span href="#tab-item-2">Calendar</span>

  <input type="radio" id="tab-3" name="tab">
  <span href="#tab-item-3">Book Mark</span>

  <input type="radio" id="tab-4" name="tab">
  <span href="#tab-item-4">Upload</span>
  
  <input type="radio" id="tab-5" name="tab">
  <span href="#tab-item-5">Settings</span>

  <!-- tab-content -->
  <div class="tab-content">
    <section id="tab-item-1">
      <h1>One</h1>
    </section>
    <section id="tab-item-2">
      <h1>Two</h1>
    </section>
    <section id="tab-item-3">
      <h1>Three</h1>
    </section>
    <section id="tab-item-4">
      <h1>Four</h1>
    </section>
    <section id="tab-item-5">
      <h1>Five</h1>
    </section>
  </div>
</div>

Lưu ý: Các effect 2, 4 và 5 để xuất hiện Font-awesome bạn cần phải thêm link CSS của Font-awesome và các cú pháp kỳ tự tương ứng. Bạn có thể tham khảo thêm ở đường dẫn bên dưới.

Xem thêm: Hướng dẫn sử dụng Font Awesome - thư hiện icon khổng lồ dành cho website.


Nếu có bất kỳ vấn đề khó khăn hay câu hỏi gì, bạn đừng ngần ngại, hãy để lại bình luận ở form bên dưới nhé.
Chúc bạn thành công!

Created by SoClear/Iris Tips
Đăng ký nhận tin khuyến mãi, thủ thuật mới

Mẹo nhỏ khi bình luận
  • - Để viết chữ in đậm hãy sử dụng thẻ <b>chữ in đậm</b>
  • - Để viết chữ in nghiêng hãy sử dụng thẻ <i>chữ in nghiêng</i>
  • - Để viết code hãy sử dụng công cụ Conversion ở bên dưới để mã hóa và sau đó dán vào khung bình luận.
  • - Để chèn hình ảnh, video chỉ cần dán link trực tiếp của hình ảnh hoặc video vào khung bình luận (hỗ trợ: jpg, gif, png, bmp, Youtube).
  • - Bạn có thể upload hình ảnh, tập tin trực tiếp từ máy tính bằng cách sử dụng công cụ Up ảnh hoặc Up file ở bên dưới.
  • - Bạn có thể check vào ô Notify me ở khung nhận xét để nhận thông báo qua email khi ai đó trả lời bình luận của bạn.

10 Comments

  1. Bài viết này thật hay và thực hiện rất dễ thành công!Ban đầu mình chỉ nghĩ là những tab văn bản đơn thuần,ghi những nội dung mình muốn phổ biến,hoặc là những tab chứa link đến những bài viết,hay những ứng dụng hỗ trợ người đọc.Nhưng đi sâu vào thì không phải chỉ có vậy!Ứng dụng này chẳng khác nào multi tabs nhưng dễ thực hiện hơn!
    Qua các vị trí "one","two" "three" "four" "five" ta có thể chèn các code html vào và 5 tabs trở thành là 5 ứng dụng,chuyển qua lại dễ dàng và thật gọn,tiết kiệm được nhiều diện tích trên trang!
    PS:thực tế là mình đã tích hợp được những bản tin rss feed và nhiều thứ nữa...qua những tabs này!
    Bài viết thật hữu ích!Xin cảm ơn tác giả! /-st

    Trả lờiXóa
  2. Chèn code HTML dễ dàng giữa thẻ "section id=..." và thẻ đóng section.Và ứng dụng hoạt động thật tốt! /-st

    Trả lờiXóa
    Trả lời
    1. Tất nhiên là hoạt động tốt rồi bạn! Vì mọi thứ mình không biết điều vào đây để hỏi!

      Xóa
  3. Khi e chèn CSS vào blog của e thì tab cũng ko có và CSS chính bị lỗi hết. Có cách nào giúp e với ạ!

    Trả lờiXóa
    Trả lời
    1. Có thể bạn bị trùng class nên mới bị lỗi như vậy. Bạn thử đổi tên class trong thủ thuật trên nhé.

      Xóa
    2. Nếu làm không được thì đợi vài hôm nữa mình sẽ share một tips tạo tab khác làm bằng JS, nặng hơn 1 chút nhưng đẹp và nhiều tính năng hơn. :)

      Xóa
    3. Em vẫn chưa làm được ad ạ! :3 Cám ơn ad nhé!

      Xóa
  4. Cảm ơn rất rất nhiều, đơn giản và hiệu quả cho mọi loại web, chỉ cần html+css. Chúc ad mạnh khỏe và có nhiều vài viết hay

    Trả lờiXóa
    Trả lời
    1. Cảm ơn bạn. Chúc bạn luôn vui khỏe /-sl

      Xóa
  5. Code chèn vào template thì bình thường, đăng bài thì lại bị lỗi là nội dung bài viết có hàng này cách hàng kia cả trăm cây số luôn Admin ơi.

    Trả lờiXóa

Đăng nhập bằng Google


Cùng tham gia bình luận bài viết này nhé!