Thiết lập CSS chung cho các bài viết thuộc nhãn nhất định

Khi mổ xẻ phân tích cấu trúc XML liên quan đến nhãn trong Template của blogspot, có khối chuyện để tùy biến và sáng tạo. Ở đây mình sẽ cùng bạn “nghịch ngợm” qua vấn đề thiết lập CSS chung cho các bài thuộc một nhãn nhất định.

Xem Demo.

Trước tiên chúng ta cần biết được đoạn code liên quan đến liên kết nhãn trong Template ở chế độ mở rộng mẫu tiện ích như sau:
<span class='post-labels'>
<b:if cond='data:post.labels'>
<data:postLabelsLabel/>
<b:loop values='data:post.labels' var='label'>
<a expr:href='data:label.url' rel='tag'><data:label.name/></a>
<b:if cond='data:label.isLast != &quot;true&quot;'>,</b:if>
</b:loop>
</b:if>
</span>

Lưu ý, trong Template có thể có nhiều đoạn code như vậy, trường hợp này chỉ chú ý đến đoạn code nằm ở phần post-footer, tức là nằm sau thẻ <div class='post-footer'>.

Trong đoạn code trên, thẻ dữ liệu <data:label.name/> xác định tên nhãn. Vậy khi cần gán điều kiện nào đó cho một nhãn thì sử dụng lệnh điều kiện như sau:
<b:if cond='data:label.name = &quot;Tên nhãn&quot;'>
... điều kiện được gán nằm ở đây ...
</b:if>
Trên cơ sở này chúng ta có thể gán điều kiện CSS chung cho cho tất cả các bài viết thuộc một nhãn nhất định, qua đó có thể đặt màu nền, màu văn bản, font chữ hay nhiều định dạng CSS khác góp phần tạo nét riêng cho các bài viết thuộc một nhãn nào đó. Để làm được điều này, chúng ta cần gắn ID cho bài viết bằng cách thay dòng <div class='post-body entry-content'>

bằng dòng <div class='post-body entry-content' expr:id='data:post.id'>.

Tiếp theo chúng ta cần đặt CSS chung cho phần bài viết của một nhãn, kết hợp đoạn script có chức năng gán class cho nhãn:
<style type='text/css'>
.postLabel1 {
background: transparent url(URL_hình nền) no-repeat 50% 50%;
color: #d8eaee;
font-size: 14px;
line-height: 18px;
padding: 20px;
}
</style>

<script type='text/javascript'>
//<![CDATA[
function specifyLabel1(strx) { document.getElementById(strx).className='postLabel1'; }
//]]>
</script>
Bước tiếp theo là thay đoạn code liên quan đến nhãn bằng đoạn code bên dưới:
<span class='post-labels'>
<b:if cond='data:post.labels'>
<data:postLabelsLabel/>
<b:loop values='data:post.labels' var='label'>
<a expr:href='data:label.url' rel='tag'><data:label.name/></a>
<b:if cond='data:label.name == &quot;Tên nhãn 1&quot;'>
<script type='text/javascript'> specifyLabel1(&#39;<data:post.id/>&#39;) </script>
</b:if>
<b:if cond='data:label.isLast != &quot;true&quot;'>,</b:if>
</b:loop>
</b:if>
</span>
Đến đây là hoàn tất các bước thực hiện thủ thuật, lúc này bạn có thể bắt đầu tùy biến CSS theo ý thích của mình. Nếu bạn muốn tạo CSS chung cho các bài viết thuộc một nhãn khác, thì bạn tiếp tục thiết lập định dạng CSS và Javascript có thể như sau:
<style type='text/css'>
.postLabel2 {
-moz-border-radius: 10px;
-moz-box-shadow: inset 10px 10px 25px #432, inset -10px -10px 25px #432;
background-color: #101921;
margin: 30px auto;
padding: 30px 0;
text-align: center;
width: 550px;
}
.postLabel2 img {
-moz-border-radius: 10px;
-moz-box-shadow: inset 10px 10px 25px #765, inset -10px -10px 25px #765;
border: none !important;
padding: 20px !important;
}
</style>

<script type='text/javascript'>
//<![CDATA[
function specifyLabel2(strx) { document.getElementById(strx).className='postLabel2'; }
//]]>
</script>
Và cuối cùng sử dụng code chỉ định nhãn như thế này:
<span class='post-labels'>
<b:if cond='data:post.labels'>
<data:postLabelsLabel/>
<b:loop values='data:post.labels' var='label'>
<a expr:href='data:label.url' rel='tag'><data:label.name/></a>
<b:if cond='data:label.name == &quot;Tên nhãn 1&quot;'>
<script type='text/javascript'> specifyLabel1(&#39;<data:post.id/>&#39;) </script>
</b:if>
<b:if cond='data:label.name == &quot;Tên nhãn 2&quot;'>
<script type='text/javascript'> specifyLabel2(&#39;<data:post.id/>&#39;) </script>
</b:if>
<b:if cond='data:label.isLast != &quot;true&quot;'>,</b:if>
</b:loop>
</b:if>
</span>
Nhớ thay Tên nhãn 1Tên nhãn 2 bằng các tên nhãn tương ứng mà bạn muốn thiết lập CSS chung cho các bài viết thuộc các nhãn này nhé.

Nguồn : chúng tôi sưu tầm từ nhiều nguồn

Không có nhận xét nào

Một số lưu ý khi bình luận

Bấm Thông báo cho tôi bên dưới khung bình luận để nhận thông báo khi admin trả lời.

Để bình luận một đoạn code, hãy mã hóa code trước nhé!

» Cảm ơn bạn đã ghé thăm websitemika.com
» Nếu có thắc mắc hay góp ý, bạn hãy để lại một góp ý !
» Vui lòng đăng những góp ý lịch sự và gõ tiếng Việt có dấu nếu có thể
HƯỚNG DẪN ĐĂNG THÔNG TIN GÓP Ý :
Bước 1 – Gõ nội dung bạn cần góp ý tới chúng tôi.
Bước 2 - Xử lý mục " Nhận xét với tư cách "
Cách 1 : - Chọn Tên/URL: Gõ tên và địa chỉ blog bạn vào.Nếu không có tài khoản, bạn vẫn có thể nhận xét bằng cách Chọn hồ sơ là Tên/URL hay Ẩn danh. Tuy nhiên bạn nên chọn Tên/URL với URL có thể để trống để cho chúng tôi biết bạn là ai. Bạn vui lòng gõ tiếng Việt có dấu để mọi người không hiểu nhầm so thành sờ, mo thành mò.
Cách 2 : - Chọn Ẩn danh.
Bước 3 - Xem trước: Tuỳ, Bạn là người cẩn thận cần xem lại nội dung Bạn đã gõ (rất cần nếu Bạn có nhập mã, để xem nó hiển thị có đúng không).
Bước 4 - Nên nháy chuột vào nội dung, bấm phím Ctrol + A rồi Ctrol + C nhằm copy nội dung - Đề phòng lỡ hệ thống đăng góp ý trục trặt hoặc mạng rớt, ta có thể Ctrol + V dán đăng lại góp ý để khỏi tốn thời gian!
Bước 5 – Lick vào Button : Đăng nhận xét . Vậy là xong,góp ý của các bạn sẽ được Admin kiểm duyệt và cho đăng trong vòng 12h.Cảm ơn các bạn đã góp ý !

GIỚI THIỆU ĐẾN QUÝ KHÁCH MỘT SỐ DỰ ÁN SẼ THỰC HIỆN TRONG NĂM 2018


DANH MỤC BÀI ĐĂNG - KHÁCH MUỐN XEM NỘI DUNG GÌ LICK VÀO TIÊU ĐỀ ẤY


WEBSITEMIKA - THƯƠNG HIỆU UY TÍN BỞI HƠN 300 DOANH NGHIỆP VÀ CÁC THƯƠNG HIỆU VỪA VÀ NHỎ LỰA CHỌN
Điểm giao dịch: Online 24h
-Email: Setup247@gmail.com - Website: https://thietkeweb.mikalaza.com