• Tư vấn điều trị
      bệnh khàn tiếng


    www.trikhantieng.com

    Liên hệ + 0913163316

BlogList111

Việt Nam Gia Phả, nơi lưu trữ Gia Phả của người Việt Nam  Kiến thức Blogspot Ngonluanho: Nhung cau chuyen thap lua-Tin-Cay-Men Vngreenzone Là một nơi chia sẻ kinh nghiệm làm blogger - Nơi tôn vinh tâm hồn blogger Việt

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

9
23/08/2011

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 1, Tê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é.

Xin chúc mừng, bạn là khách có lời bình số 9 may mắn. Bạn đã nhận được lời chúc phúc chân thành từ tác giả bài viết

{9 bình luậnAdd yours ?}

22:19:00, 23 thg 8, 2011

Chưa thử nhưng xem qua thì cái này có thể làm nên nhiều chuyện à nha :74) . He he cảm ơn A Hà, bữa nào rãnh vọc chơi, em khoái mấy thủ thuật dạng này nè :65)

Reply
22:21:00, 23 thg 8, 2011

Đúng như DPMNET nói, nếu tinh ý sẽ mò ra nhiều vấn đề khác nữa từ cái này, thêm một vấn đề để chúng ta làm chủ XML của Template. Khai thác tối đa tài nguyên XML sẵn có của blogspot là phương châm của TTB.

Reply
22:50:00, 23 thg 8, 2011

Thủ thuật này thật tuyệt, nếu mình chịu áp dụng thì mỗi nhãn sẽ có một màu đặc trưng, tạo nên một phong cách hết sức độc đáo :55)

Reply
23:30:00, 23 thg 8, 2011

cũng tương tự như tùy biến từng label cho cloud ngày trước anh Hà viết nhỉ

Reply
10:54:00, 24 thg 8, 2011

Mình chưa xem kỹ nhưng có một vấn đề từ trước đến giờ vẫn băng khoăng,
Giả sử một bài viết có khoảng 3-5 nhãn thì áp dụng thử thuật này như thế nào?

Reply
10:59:00, 24 thg 8, 2011

Thì chỉ những bài viết thuộc nhãn nào được gán điều kiện thì mới có chức năng CSS chung đã gán mà Minh Triết. Có thể gán cho nhiều nhãn riêng biệt.

Reply
11:01:00, 24 thg 8, 2011

Từ thủ thuật này có thể nghĩ đến việc chỉ hiển thị một số tiện ích khi xem các bài viết thuộc 1 nhãn nhất định.

Reply
16:32:00, 24 thg 8, 2011

Lúc trước có thủ thuật đặt Password cho bài viết nhất định.Nay chèn thêm CSS chung này chắc có thể tạp Pass cho cả Label :51)

Reply
16:37:00, 24 thg 8, 2011

Đúng thế, Born2trade nói có lý, thử ngâm cứu áp dụng xem.

Reply
Nội quy! Đóng lại Khi bạn viết bình luận, cần tuân thủ một số quy tắc sau:
» Bình luận phải nghiêm túc và không chứa các liên kết quảng cáo.
» Có thể sử dụng các thẻ <b> … </b>,<i> … </i>, <a href="URL..."> ... </a>.
» Yêu cầu thủ thuật tại mục Yêu cầu thủ thuật hoặc hỏi tại mục Hỏi và Đáp.
More →
Chữ đậm Chữ nghiêng Chữ nghiêng 2 Chèn Link Chèn Link Mã hóa code Help ?Nhấn vào biểu tượng hoặc kiểu chữ hoặc chèn link sau đó nhấn nút Chọn rồi copy (Ctrl + C) để paste (Ctrl + V) vào khung viết bình luận. Mã hóa code nếu bạn muốn đưa code vào bình luận.

Chọn Xóa

Next post: Bài đăng Mới hơn

Previous post: Bài đăng Cũ hơn