Tuesday, June 26, 2018

Tạo widget Recent Comment (bình luận mới) với thiết kế đẹp mắt cho Blogspot

Chào các bạn, chào mừng các bạn quay lại với Blog Bác Sĩ Windows - bacsiwindows.com/blog.
Hôm nay mình sẽ chia sẻ code widget Recent Comment (hay còn gọi là bình luận mới nhất, bình luận gần đây) do mình mod lại  từ một trang blog nước ngoài (không nhớ tên).
Widget sẽ liệt kê ra những nhận xét mới nhất trên Blog của bạn, giúp bạn cũng như khách ghé thăm dễ dàng quản lý được những ai đã nhận xét!
Xem demo

Cách thực hiện

Tạo một Widget HTML/Javascript trong Bố cục, và dán toàn bộ code này vào:
<style>
.comment-info2 {clear: both; width: 100%; float: left; margin: 0 0 15px; }
.comment-info2 .left {background: #dedede; padding: 3px 15px; border-radius: 100px; display: block; text-transform: uppercase; font: 400 12px Roboto;}
.comment-info2 .right a {font: 500 12px Roboto,sans-serif; text-transform: uppercase; background: #dedede; padding: 3px 15px; box-sizing: border-box; display: block; border-radius: 100px;}
.comment-info2 .right a:hover {opacity: .8}
ul.idbcomments{list-style:none;margin:0;padding:0}.idbcomments li{position:relative;display:block;clear:both;overflow:hidden;list-style:none;border-bottom:0!important;word-break:break-all;padding:0 0 7px!important}.idbcomments li .avatarImage{float:left;margin-right:12px;position:relative;overflow:hidden}.idbcomments li img{border-radius:100%;position:relative;overflow:hidden;display:block;width:45px;height:45px}.idbcomments li a{text-decoration: none; color: #fff; font: 500 14px "Roboto"; position: absolute; background: #dedede; padding: 5px 10px; border-radius: 100px;border-bottom-left-radius:0}.idbcomments li span{color: #666; display: block; background: #dedede; padding: 7px 15px; border-radius: 100px;border-top-left-radius:0; margin: 25px 0 0 0;}
</style>
<script type="text/javascript">
//<![CDATA[
// Recent Comments
function idbcomments(a) {
    var e;
    e = '<ul class="idbcomments">';
    for (var t = 0; numComments > t; t++) {
        var r, o, n, i;
        if (t == a.feed.entry.length) break;
        e += "<li>";
        for (var d = a.feed.entry[t], s = 0; s < d.link.length; s++) "alternate" == d.link[s].rel && (r = d.link[s].href);
        for (var l = 0; l < d.author.length; l++) o = d.author[l].name.$t, n = d.author[l].gd$image.src;
        n = -1 != n.indexOf("/s1600/") ? n.replace("/s1600/", "/s" + avatarSize + "-c/") : -1 != n.indexOf("/s220/") ? n.replace("/s220/", "/s" + avatarSize + "-c/") : -1 != n.indexOf("/s512-c/") && 0 != n.indexOf("https:") ? "https:" + n.replace("/s512-c/", "/s" + avatarSize + "-c/") : -1 != n.indexOf("blogblog.com/img/b16-rounded.gif") ? "https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZNVNetH2YivKHnQI3zGBKtXAaP9uAl3frvmn_HzF87UIgCh8cwiqVCZvyG8-ZZ0aTYE5N1pcONdRVMyjIC4zx5iIfSYJ-UWw-PQ0QoX5qcWb487hQQZi7lFDNCErH4DgcQsgjzHabSwiq/" + avatarSize + "/blogger.png" : -1 != n.indexOf("blogblog.com/img/openid16-rounded.gif") ? "https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhnJitXs93MCUkKUsnlY2zw2bvRLw_LRSvDcLE5n5htyqAUxtMsS5ilfJWXH1-AiOORv1BcD5MnzE9OCJ1dhCZ4ULED72jtMcXZgKcy9oKTcX4sv_HdIsz3auEO8_dHa2A66aXZ6F5Dco_5/" + avatarSize + "/openid.png" : -1 != n.indexOf("blogblog.com/img/blank.gif") ? -1 != defaultAvatar.indexOf("gravatar.com") ? defaultAvatar + "&s=" + avatarSize : defaultAvatar : n, 1 == showAvatar && (i = 1 == roundAvatar ? "avatarRound" : "", e += '<div class="avatarImage ' + i + '"><a title="Truy cập đến bình luận đó" href="' + r + '"><img class="' + i + '" src="' + n + '" alt="' + o + '" width="' + avatarSize + '" height="' + avatarSize + '"/></a></div>'), e += '<a href="' + r + '">' + o + "</a>";
        var A = d.content.$t,
            v = A.replace(/(<([^>]+)>)/gi, "");
        "" != v && v.length > characters ? (v = v.substring(0, characters), v += "&hellip;", 1 == showMorelink && (v += '<a href="' + r + '">' + moreLinktext + "</a>")) : v = v, e += "<span>" + v + "</span>", e += "</li>"
    }
    e += "</ul>";
    var c = "";
    0 == hideCredits && (c = "display:block;"), e += "", document.write(e)
}
var numComments = 7, // số cmt
    showAvatar = !1, // hiện avatar hay không
    avatarSize = 42, // kích thước avatar
    roundAvatar = !0, // avatar có bo tròn không
    characters = 38, // số kí tự của nhận xét
    showMorelink = !1, // hiện link đọc thêm
    defaultAvatar = "https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPE-HjnS5ADeV-YIE4SeMnfsiEpOWiXcQor7DYGKT_wNXdE7h9ZM3XoZHYj-LhH85AiFkzAIIU2KixsYj19fpbWzputqJ2si0IuVWZCLQUklbeEBWLAq84MgC9YH6hFSW0edMvgv_IpMqP/s35/Logo-Bac-Si-Windows.png",
    hideCredits = !0,
    numComments = numComments || 5,
    avatarSize = avatarSize || 60,
    characters = characters || 25,
    defaultAvatar = defaultAvatar || "https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPE-HjnS5ADeV-YIE4SeMnfsiEpOWiXcQor7DYGKT_wNXdE7h9ZM3XoZHYj-LhH85AiFkzAIIU2KixsYj19fpbWzputqJ2si0IuVWZCLQUklbeEBWLAq84MgC9YH6hFSW0edMvgv_IpMqP/s35/Logo-Bac-Si-Windows.png",
    moreLinktext = moreLinktext || " More &raquo;",
    showAvatar = "undefined" == typeof showAvatar ? !0 : showAvatar,
    showMorelink = "undefined" == typeof showMorelink ? !1 : showMorelink,
    roundAvatar = "undefined" == typeof roundAvatar ? !0 : roundAvatar,
    hideCredits = "undefined" == typeof hideCredits ? !1 : roundAvatar;
//]]>
</script>
<script type="text/javascript" src="/feeds/comments/default?alt=json&amp;callback=idbcomments"></script>
<div class='comment-info2'>
<div class='right'><a href='/cmt' target='_blank' title='Xem 200 bình luận gần đây'>View all <i class='fa fa-angle-right' style='margin:0 0 0 5px'/></i></a>
</div>
</div>
<script type="text/javascript">
//<![CDATA[
function totalPosts(json){document.getElementById('Stats1_totalPosts').innerHTML=json.feed.openSearch$totalResults.$t};function totalComments(json){document.getElementById('Stats1_totalComments').innerHTML=json.feed.openSearch$totalResults.$t};document.write('<script type=\"text/javascript\" src=\"/feeds/posts/default?alt=json-in-script&max-results=0&callback=totalPosts\"><\/script><script type=\"text/javascript\" src=\"/feeds/comments/default?alt=json-in-script&max-results=0&callback=totalComments\"><\/script>');
//]]>
</script>
Chỉnh sửa một vài chỗ in đậm lại cho phù hợp với Blog của bạn nhé.

Tổng kết

Để xem thêm các widget recent comment khác, hãy click vào đây! Chúc thành công!

Sunday, June 10, 2018

Thủ thuật chống chuột phải bằng cách hiện cảnh báo và chuyển hướng cho Blogspot

Chào các bạn, chào mừng các bạn quay trở lại với blog Bác Sĩ Windows - bacsiwindows.com/blog.
Tiếp theo các bài viết bảo vệ blog - chống chuột phải - chống copy, thì bài viết hôm nay mình sẽ hướng dẫn các bạn tạo popup alert hiện ra cảnh báo và chuyển hướng người dùng khi họ click chuột phải trên trang.
Thủ thuật này được tùy biến lại từ bài viết: Thủ thuật chống copy bằng menu chuột phải...
Để xem Demo thì hãy thử click chuột phải trên trang này nhé!

Cách thực hiện

Đơn giản bạn chỉ cần thêm đoạn javascript này vào sau thẻ <body> trong Template rồi Lưu lại thôi!

<script type='text/javascript'>
// bacsiwindows.com
$(document).bind("contextmenu", function(event) {
event.preventDefault();
alert('DỪNG LẠI!'); // Edit text
window.location.assign('https://www.bacsiwindows.com'); // Edit URL redirect
});
</script>
Chúc thành công, buổi tối vui vẻ!

Saturday, June 9, 2018

Thủ thuật chống F12 cho Blog bằng Javascript Debugger in Developer Tools

Chào các bạn, chào mừng quay trở lại với Blog Bác Sĩ Windows - bacsiwindows.com
Bài viết hôm nay mình sẽ hướng dẫn các ban một cách khác giúp chống người khác F12 (hay mở Developer tools) trên trang web của bạn.
Thủ thuật sẽ tự động chuyển sang tag sources và bật chức năng debugger khiến người khác không thể xem mã nguồn trang web của bạn được. Để rõ hơn thì hãy thử F12 tại trang này để xem nhé.

Các bước thực hiện

Bạn chỉ cần thêm đoạn javascript này vào trước thẻ </head> trong template là được.
<script type='text/javascript'>
//<![CDATA[
! function t() {
    try {
        ! function t(n) {
            1 === ("" + n / n).length && 0 !== n || function() {}.constructor("debugger")(), t(++n)
        }(0)
    } catch (n) {
        setTimeout(t, 100) // thời gian độ trễ
    }
}();
//]]>
</script>
Chúc bạn một ngày vui vẻ!

Friday, June 8, 2018

Hiện popup cảnh báo khi nhấn chuột phải trên Blogspot

Chào các bạn, chào mừng đã quay trở lại với Bác Sĩ Windows - bacsiwindows.com/blog
Bài viết hôm nay mình sẽ hướng dẫn các bạn tạo popup cảnh báo hiện text khi người dùng click chuột phải trên trang. Thủ thuật này được tùy biến lại từ bài viết: Thủ thuật chống Copy bằng Menu chuột phải tuyệt đẹp cho Blogspot.
Hiện popup cảnh báo khi nhấn chuột phải trên Blogspot
Thủ thuật khá hay, chống được chuột phải lại còn hiện popup cảnh báo người ta! Để hình dung rõ hơn thì bạn thử click chuột phải trên bất kì vị trí nào ở trang này để xem Demo nhé!

Các bước thực hiện

Bước 1. Chèn CSS (trước ]]></b:skin>)
ul.contextMenu{background:#fff;text-align:center;margin:0;padding:10px 20px;border-radius:100px;color:#ff6460;box-shadow:0 0 70px rgba(0,0,0,.25);font-family:"Roboto Condensed",sans-serif;font-weight:700;font-size:24px;z-index:999999;position:fixed;top:50%!important;left:50%!important;transform:translate(-50%,-50%);pointer-events:none}
Bước 2. Chèn HTML và Javascript (sau <body)
<ul class='contextMenu' hidden='1'>NO! STOP!</ul>
<script type='text/javascript'>
// Right click show Popup by bacsiwindows.com
$(document).bind("contextmenu", function(event) {
event.preventDefault();
$("ul.contextMenu")
.show();
});
$(document).click(function() {
isHovered = $("ul.contextMenu").is(":hover");
if (isHovered == false){
$("ul.contextMenu").fadeOut(100);
}
});
</script>
Thay dòng chữ đỏ cho phù hợp theo ý bạn nhé!
Bước 3. Lưu mẫu

Chúc thành công!

Sunday, May 20, 2018

Tạo box thông tin bài viết & tác giả tuyệt đẹp bên dưới bài viết cho Blogspot

Chào các bạn, chào mừng các bạn quay lại với Blog Bác Sĩ Windows - bacsiwindows.com
Theo như yêu cầu của một vài bạn gửi cho mình yêu cầu mình chia sẻ hộp thông tin bài viết và thông tin tác giả bên dưới bài viết do mình vừa làm xong.
Tạo box thông tin bài viết & tác giả tuyệt đẹp bên dưới bài viết cho Blogspot
Như đã hứa thì hôm nay ngay lúc này mình sẽ hướng dẫn các bạn tạo box thông tin với hiệu ứng hover tuyệt đẹp này. Xem demo ngay tại bên dưới!

Các bước thực hiện

Bước 1. Thêm toàn bộ CSS sau vào trước thẻ ]]></b:skin>
#bsw_entry_header{margin:10px 0;background:#fff;padding:10px;line-height:1.5;border-radius:10px;width:50%;float:left}
#bsw_entry_header div{margin:0 0 5px;color:#666;text-overflow:ellipsis;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}
#bsw_entry_header div:last-child{margin:0}/* source code by bacsiwindows.com */
#bsw_entry_header div i{background:#eee;width:30px;height:30px;line-height:30px;text-align:center;border-radius:100px}
#right-entry-header div.r-bsw div.author-bsw .social-info-bsw{position:absolute;width:100%;bottom:0;left:0;padding:10px;text-align:center;opacity:0;transition:.5s}
#right-entry-header div.r-bsw div.author-bsw .social-info-bsw p{display:inline-block}
#right-entry-header div.r-bsw div.author-bsw .social-info-bsw p i{background:#ededed;width:30px;height:30px;line-height:30px;text-align:center;border-radius:50%;transition:.33s}
#right-entry-header div.r-bsw div.author-bsw .social-info-bsw p i:hover{background-color:#7577a9!important;color:white}
#right-entry-header{width:48.5%;float:right;background:white;margin:10px 0;border-radius:10px;position:relative;height:155px}/* source code by bacsiwindows.com */
#right-entry-header div.r-bsw{}
#right-entry-header div.r-bsw div.author-bsw{position:absolute;width:100%;height:100%}
#right-entry-header div.r-bsw div.author-bsw h10.author-bsw-name{font-family:Roboto Condensed;font-weight:700;text-transform:uppercase;color:#7577a9;top:15px;position:absolute;left:50%;transform:translate(-50%,0);font-size:20px;opacity:0;transition:.5s}
.author-bsw:hover h10{opacity:1!important}
#right-entry-header div.r-bsw div.author-bsw div.info-bsw-m{position:absolute;padding:10px;top:36px;line-height:1.3;font-family:&#39;Roboto&#39;,sans-serif;color:#555;opacity:0;transition:.5s;text-align:center}
.author-bsw:hover .info-bsw-m{opacity:1!important}/* source code by bacsiwindows.com */
#right-entry-header div.r-bsw div.author-bsw img{width:90px;height:90px;object-fit:cover;border-radius:50%;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);transition:.5s}
.author-bsw:hover img{width:1px!important;height:1px!important;opacity:0}
.author-bsw:hover .social-info-bsw{opacity:1!important}
Bước 2.  Thêm toàn bộ HTML sau vào sau thẻ <data:post.body/>
(Lưu ý: trong template sẽ có rất nhiều thẻ như vậy, bạn phải thay vào đúng vị trí thì mới hiện nhé)
<b:if cond='data:blog.pageType == &quot;item&quot;'>
    <div id='bsw_entry_header'>
        <div><i aria-hidden='true' class='fa fa-user-circle' style='margin:0 2px 0 0' /> <b>Tác giả</b>: <data:post.author/></div>
        <div><i class='fa fa-history' style='margin:0 2px 0 0' /> <b>Ngày đăng</b>: <data:post.dateHeader/> lúc <abbr class='published updated' expr:title='data:post.timestampISO8601' itemprop='datePublished'><data:post.timestamp/></abbr></div>
        <div>
            <b:if cond='data:blog.pageType != &quot;static_page&quot;'>
                <b:if cond='data:post.allowComments'><i class='far fa-comments' style='margin:0 2px 0 0' /> <b>Tổng số bình luận</b>: <span class='comment-info'><a expr:href='data:post.url + &quot;#comments&quot;'><b:if cond='data:post.numComments'><data:post.numComments/></b:if></a></span></b:if>
            </b:if>
        </div>
        <div><i class='fa fa-tags' style='margin:0 2px 0 0' /><b>Tag</b>:
            <b:if cond='data:post.labels'>
                <b:loop values='data:post.labels' var='label'>
                    <a expr:href='data:label.url + &quot;?max-results=9&amp;ref=bacsiwindows&quot;' expr:title='data:label.name' rel='tag'><data:label.name/></a>
                    <b:if cond='data:label.isLast != &quot;true&quot;'>, </b:if>
                </b:loop>
            </b:if>
        </div>
    </div>
    <div id='right-entry-header'>
        <div class='r-bsw'>
            <div class='author-bsw'>
                <div class='info-bsw-author'>
                    <h10 class='author-bsw-name'>VỀ TÁC GIẢ</h10><img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPE-HjnS5ADeV-YIE4SeMnfsiEpOWiXcQor7DYGKT_wNXdE7h9ZM3XoZHYj-LhH85AiFkzAIIU2KixsYj19fpbWzputqJ2si0IuVWZCLQUklbeEBWLAq84MgC9YH6hFSW0edMvgv_IpMqP/s100/Logo-Bac-Si-Windows.png' /></div>
                <div class='info-bsw-m'>Trường Nguyễn - Thành lập, điều hành và phát triển Bác Sĩ Windows&#39;s Blog. Một chàng trai 18 tuổi, năng động và ham học hỏi!</div>
                <div class='social-info-bsw'>
                    <p><a class='home-bsw' href='//bacsiwindows.com' target='blank' title='Trang chủ'><i class='fa fa-home'/></a></p>
                    <p><a class='fb-bsw' href='//admin.bacsiwindows.com' target='blank' title='Facebook'><i class='fab fa-facebook-f'/></a></p>
                    <p><a class='gp-bsw' href='//admin.bacsiwindows.com' target='blank' title='Google Plus'><i class='fab fa-google-plus-g'/></a></p>
                    <p><a class='ct-bsw' href='//bacsiwindows.com/contact' target='blank' title='Liên hệ - Báo lỗi - Góp ý Bác Sĩ Windows'><i class='far fa-envelope-open'/></a></p>
                    <p><a class='copy-bsw' href='javascript:;' onclick='CopyLink()' title='Sao chép URL hiện tại'><i class='fa fa-link'/></a></p>
                </div>
            </div>
        </div>
    </div>
</b:if>
Chỉnh sửa lại thông tin cho phù hợp với Blog của bạn.
Bước 3. Lưu mẫu.

Tổng kết

Do mình không có thời gian và làm vội trong vài chục phút nên chưa thể hoàn chỉnh 100% và chưa có responsive, mình sẽ sớm cập nhật, các bạn thường xuyên theo dõi Blog để nhận nhiều thủ thuật hay hơn nhé. Hãy chia sẻ bài viết nếu thấy hay và hữu ích, và copy đi đâu nhớ dẫn nguồn www.bacsiwindows.com, cảm ơn.

Saturday, May 19, 2018

Hướng dẫn nâng cấp và tùy biến khung nhận xét của Blogspot phiên bản mới

Chào các bạn, chào mừng các bạn trở lại với Blog Bác Sĩ Windows - bacsiwindows.com

Bài viết hôm nay tôi sẽ hướng dẫn các bạn nâng cấp khung bình luận của Blogspot lên phiên bản mới với thiết kế mới, giao diện mới cùng các tính năng mới. Thủ thuật này sẽ chỉnh sửa khá nhiều thứ trong template vì vậy tôi khuyên các bạn hãy sao lưu lại template trước khi thực hiện đề phòng lỗi xảy ra hay hư hỏng template.
Hướng dẫn nâng cấp và tùy biến khung nhận xét của Blogspot
BSW sẽ sử dụng mẫu khung nhận xét trong suốt của Theme Contempo (phiên bản mới). Nào cùng xem và thực hiện!!!

Nâng cấp khung nhận xét phiên bản mới

Bước 1. Tìm và thay cả đoạn <html thành đoạn bên dưới
<html b:css='false' b:defaultwidgetversion='2' b:layoutsVersion='3' b:responsive='true' b:templateUrl='fancy.xml' b:templateVersion='1.2.0' expr:dir='data:blog.languageDirection' oncontextmenu='return true' xmlns='http://www.w3.org/1999/xhtml' xmlns:b='http://www.google.com/2005/gml/b' xmlns:data='http://www.google.com/2005/gml/data' xmlns:expr='http://www.google.com/2005/gml/expr'>
Bước 2. Tìm thẻ <b:skin><![CDATA[ và thêm toàn bộ CSS sau vào ngay bên dưới, nhấn mạnh là ngay bên dưới luôn nhé.
/*
<Group description="Body">
  <Variable name="body.background" description="Background" type="background" color="$(body.background.color)" default="$(color) none repeat scroll top left"  value="#ffffff url(#) no-repeat scroll top center /* Credit: Mae Burke (http://www.offset.com/photos/389967) */;"/>
  <Variable name="body.background.color" description="Background color" type="color" default="transparent"  value="transparent"/>
  <Variable name="body.title.font.small" description="Title font (small)" type="font" default="$(garamond20)"  value="normal 400 14px Roboto, sans-serif"/>
  <Variable name="body.title.font.large" description="Title font (large)" type="font" default="$(garamond24)"  value="normal 400 24px Roboto, sans-serif"/>
  <Variable name="body.title.color" description="Title color" type="color" default="#000"  value="#000000"/>
  <Variable name="body.action.font.small" description="Action font (small)" type="font" default="$(Roboto12)"  value="normal 400 12px Roboto, sans-serif"/>
  <Variable name="body.action.font.large" description="Action font (large)" type="font" default="$(Roboto14)"  value="normal 400 14px Roboto, sans-serif"/>
  <Variable name="body.action.color" description="Action color" type="color" default="#4267b2"  value="#4267b2"/>
  <Variable name="body.text.font" description="Text font" type="font" default="$(garamond20)"  value="normal 400 14px Roboto, sans-serif"/>
  <Variable name="body.text.color" description="Text color" type="color" default="#000"  value="#000000"/>
  <Variable name="body.link.color" description="Link color" type="color" default="#4267b2"  value="#4267b2"/>
  <Variable name="body.widget.title.font.small" description="Gadget title font (small)" type="font" default="$(Roboto12)"  value="normal 400 12px Roboto, sans-serif"/>
  <Variable name="body.widget.title.font.large" description="Gadget title font (large)" type="font" default="$(Roboto14)"  value="normal 400 14px Roboto, sans-serif"/>
  <Variable name="body.widget.title.color" description="Gadget title color" type="color" default="rgba(0, 0, 0, 0.54)"  value="rgba(0, 0, 0, 0.54)"/>
  <Variable name="body.filter.background.color" description="Filter background color" type="color" default="#302c24"  value="#302c24"/>
  <Variable name="body.filter.text.font.small" description="Filter text font (small)" type="font" default="$(Roboto12)"  value="normal 400 12px Roboto, sans-serif"/>
  <Variable name="body.filter.text.font.large" description="Filter text font (large)" type="font" default="$(Roboto14)"  value="normal 400 14px Roboto, sans-serif"/>
  <Variable name="body.filter.text.color" description="Filter text color" type="color" default="rgba(255, 255, 255, 0.54)"  value="rgba(255, 255, 255, 0.54)"/>
  <Variable name="body.filter.keyword.font.small" description="Filter keyword font (small)" type="font" default="$(RobotoBold12)"  value="normal 700 12px Roboto, sans-serif"/>
  <Variable name="body.filter.keyword.font.large" description="Filter keyword font (large)" type="font" default="$(RobotoBold14)"  value="normal 700 14px Roboto, sans-serif"/>
  <Variable name="body.filter.keyword.color" description="Filter keyword color" type="color" default="rgba(255, 255, 255, 0.87)"  value="rgba(255, 255, 255, 0.87)"/>
  <Variable name="body.filter.link.font.small" description="Filter link font (small)" type="font" default="$(RobotoBold12)"  value="normal 700 12px Roboto, sans-serif"/>
  <Variable name="body.filter.link.font.large" description="Filter link font (large)" type="font" default="$(RobotoBold14)"  value="normal 700 14px Roboto, sans-serif"/>
  <Variable name="body.filter.link.color" description="Filter link color" type="color" default="#4267b2"  value="#4267b2"/>
</Group>
*/
Bước 3. Lưu mẫu và hoàn tất nâng cấp khung nhận xét.

Tùy biến khung nhận xét mới

Thông thường sau khi nâng cấp thì khung nhận xét sẽ giống như mặc định, nếu bạn muốn trông bắt mắt hơn, khác biệt hơn thì bạn có thể viết thêm CSS cho nó theo mẫu dưới đây:
.comments iframe {
/* CSS */
}
Còn đây là CSS tùy biến của BSW:
.comments iframe {background: #fff;padding: 0 10px;box-sizing:border-box;border-radius: 10px}

Tổng kết

Không có gì để tổng kết, chúc bạn một ngày vui vẻ!

Sunday, March 11, 2018

Tạo khung Một số lưu ý khi bình luận giống Bác Sĩ Windows cho Blogspot

Hello xin chào tất cả các bạn, chào mừng các bạn đã trở lại với blog Bác Sĩ Windows.
Theo yêu cầu của nhiều bạn gửi đến Bác Sĩ Windows, yêu cầu mình chia sẻ code của khung MỘT SỐ LƯU Ý KHI BÌNH LUẬN nằm trước khung bình luận trong phần bài viết của Blogspot.
Thì bài viết này mình sẽ hướng dẫn các bạn làm khung lưu ý đó. Khá đơn giản để thực hiện, cùng theo dõi nhé.

Các bước thực hiện

Bước 1. Đăng nhập trang chỉnh sửa HTML.
Bước 2. Tìm thẻ <div id='threaded-comment-form'>
Bước 3. Dán đoạn code sau vào dưới thẻ đó.
<div id='comments_rule_bacsiwindows-v2'>
<style>
/*#comments_rule_bacsiwindows-v2:before{content:&#39;&#39;;position:absolute;bottom:-20px;left:0;border-top:20px solid #c15353;border-left:50px solid transparent;width:0;height:0;line-height:0}*/
#comments_rule_bacsiwindows-v2{background: #f4f4f4; color: #666; clear: both; text-align: left; margin: 0; padding: 15px 20px; position: relative; border-radius: 10px 10px 0 0; float: left; width: 100%; box-sizing: border-box;}
#comments_rule_bacsiwindows-v2 h2{font:500 16px Roboto;letter-spacing:.5px;text-transform:uppercase;color:#66689c;margin:0 0 5px 0}
#comments_rule_bacsiwindows-v2 p{margin:0;padding:0;font:400 16px Roboto;line-height:1.75}
#comments_rule_bacsiwindows-v2 p:before{content:&quot;\f105&quot;;margin:0 10px 0 0;font-family:fontawesome}
#comments_rule_bacsiwindows-v2 a{font-weight:500;font-size:16px}
#comments_rule_bacsiwindows-v2 a:hover {text-decoration:underline}
  .comment-footer{float:left}
</style>
<h2><i aria-hidden='true' class='fa fa-exclamation-circle' style='margin:0 10px 0 0'/>Một số lưu ý khi bình loạn</h2>
<p>Mọi bình luận sai nội quy sẽ bị xóa mà không cần báo trước (xem <a href='/rule' target='_blank'>nội quy</a>).</p>
<p>Bấm <b>Thông báo cho tôi</b> bên dưới khung bình luận để nhận thông báo khi admin trả lời.</p>
<p>Bạn có thể dùng <a href='/2017/11/mot-so-anh-dong-hai-huoc-cho-anh-em-thoai-mai-binh-loan.html' target='blank'>ảnh động</a> hoặc <a href='/p/ma-hoa-html.html' target='_blank'>mã hóa code HTML</a> để bình luận.</p>
</div>
Bước 4. Lưu mẫu... và enjoyy!

Tổng kết

Với một đoạn CSS kèm HTML đơn giản chèn trước khung bình luận, bạn đã có cho mình một Khung nội quy hoặc lưu ý khi bình luận tuyệt đẹp. Ngoài ra bạn có thể sử dụng code này vào mục đích khác như: khung thông báo, khung lưu ý trong bài viết,...

Saturday, March 10, 2018

Tạo hiệu ứng Slide và fadeIn cho Blogspot bằng Animation CSS

Bài viết hôm nay mình sẽ hướng dẫn các bạn tạo hiệu ứng trượt và mờ dần (slide & fadein) cho blogspot bằng css animation, sử dụng thuộc tính keyframes có dạng:
@keyframes tên_effect {from{CSS ban đầu}to{CSS lúc sau}}
hoặc
@keyframes tên_effect {0%{CSS ban đầu}100%{CSS lúc sau}}
Từ cấu trúc đó mình đã viết thêm tí CSS để 'trang trí' cho Blog bằng hiệu ứng trượt và mờ dần khi tải trang.
Tạo hiệu ứng Slide và fadeIn cho Blogspot bằng Animation CSS
Demo xem ngay tại trang chủ https://www.bacsiwindows.com

Cách thực hiện

Thêm toàn bộ CSS này vào trước thẻ ]]></b:skin> trong mẫu
body {animation: fadeIn 2s;-webkit-animation:fadeIn 2s;-moz-animation:fadeIn 2s}
@keyframes fadeIn{from{opacity:0;transform:translate(50px,0)}to{opacity:1}}
@-webkit-keyframes fadeIn{from{opacity:0;transform:translate(50px,0)}to{opacity:1}}
@-moz-keyframes fadeIn{from{opacity:0;transform:translate(50px,0)}to{opacity:1}}
@-o-keyframes fadeIn{from{opacity:0;transform:translate(50px,0)}to{opacity:1}}
Bạn có thể tùy chỉnh lại CSS bằng cấu trúc mình đưa ở đầu bài nhé. Nếu không thì để nguyên vậy mà dùng.
Chúc bạn thành công.

Thủ thuật chống Copy bằng Menu chuột phải tuyệt đẹp cho Blogspot

Chào các bạn, lượn trên Google thì tìm được thủ thuật cho website khá hay nên mình đã mang về và chỉnh sửa + bổ sung thêm và đưa vào Blogspot.
Thủ thuật này sử dụng javascript để vô hiệu hóa chuột phải và thay vào đó là hiện menu khi bạn click chuột phải. Mình đã bổ sung thêm những tính năng sau:
  • Chia sẻ Facebook
  • Chia sẻ Google +
  • Sao chép liên kết hiện tại
Thủ thuật chống Copy bằng Menu chuột phải tuyệt đẹp cho Blogspot
Bạn có thể test trực tiếp tại bài viết này (click chuột phải thử xem).

Cách thực hiện

Chỉ cần thêm toàn bộ code này vào sau thẻ <body> rồi lưu lại là được.

<style>
ul.contextMenu{list-style:none;margin:0;padding:0;font:400 15px 'Roboto',sans-serif;position:absolute;color:#333;box-shadow:0 0 70px rgba(0,0,0,.15);z-index:999}
ul.contextMenu li{min-width:150px;overflow:hidden;white-space:nowrap;padding:12px 15px;background-color:#fff;border-bottom:1px solid #ecf0f1}
ul.contextMenu li a{color:#333;text-decoration:none}
ul.contextMenu li:hover{background-color:#ecf0f1}
ul.contextMenu li:first-child{border-radius:5px 5px 0 0}
ul.contextMenu li:last-child{background:#ecf0f1;border-bottom:0;border-radius:0 0 5px 5px}
ul.contextMenu li:last-child a{width:26%}
ul.contextMenu li:last-child:hover a{color:#2c3e50}
ul.contextMenu li:last-child:hover a:hover{color:#2980b9}
</style>
<ul class='contextMenu' hidden='1'>
  <li><a href='/'><i class='fa fa-home'/> Trang chủ</a></li>
  <li><a href='/contact'><i class='fa fa-envelope'/> Liên hệ</a></li>
  <li><a href='/hop-tac'><i class='fa fa-link'/> Hợp tác</a></li>
  <li>
      <a class='fa fa-facebook' expr:href='&quot;//m.facebook.com/sharer/sharer.php?u=&quot; + data:blog.url' expr:onclick='&quot;window.open(this.href, \&quot;_blank\&quot;, \&quot;height=430,width=640\&quot;); return false;&quot;' title='Chia sẻ lên Facebook'/>
<a class='fa fa-google-plus' expr:href='&quot;//plus.google.com/share?url=&quot; + data:blog.url' expr:onclick='&quot;window.open(this.href, \&quot;_blank\&quot;, \&quot;height=430,width=640\&quot;); return false;&quot;' target='_blank' title='Chia sẻ lên Google'/>
      <a class='fa fa-twitter' href='//bacsiwindows.com'/>
    <a class='fa fa-link' onclick='CopyLink()' style='cursor: pointer;' title='Sao chép liên kết của bài viết'/>
  </li>
</ul>
<script type='text/javascript'>
function copyTextToClipboard(e){var t=document.createElement(&quot;textarea&quot;);t.style.position=&quot;fixed&quot;,t.style.top=0,t.style.left=0,t.style.width=&quot;2em&quot;,t.style.height=&quot;2em&quot;,t.style.padding=0,t.style.border=&quot;none&quot;,t.style.outline=&quot;none&quot;,t.style.boxShadow=&quot;none&quot;,t.style.background=&quot;transparent&quot;,t.value=e,document.body.appendChild(t),t.select();try{document.execCommand(&quot;copy&quot;),alert(&quot;Đã sao chép liên kết!&quot;)}catch(o){alert(&quot;Không thể sao chép liên kết!&quot;)}document.body.removeChild(t)}function CopyLink(){copyTextToClipboard(location.href)};
  $(document).bind(&quot;contextmenu&quot;, function(event) {
    event.preventDefault();
    $(&quot;ul.contextMenu&quot;)
        .show() // bacsiwindows.com
        .css({top: event.pageY + 15, left: event.pageX + 10});
});
$(document).click(function() {
  isHovered = $(&quot;ul.contextMenu&quot;).is(&quot;:hover&quot;);
  if (isHovered == false){
    $(&quot;ul.contextMenu&quot;).fadeOut(&quot;fast&quot;);
  }
});
</script>
Chúc bạn thành công.
Source code of thuthuatweb.net
Edited by bacsiwindows.com

Wednesday, March 7, 2018

Tạo hiệu chứ chữ cuộn lên xuống đẹp và đơn giản bằng CSS3

Tạo hiệu chứ chữ cuộn lên xuống đẹp và đơn giản bằng CSS3 - Hiệu ứng cuộn chữ đẹp và đơn giản chỉ bằng CSS, cho các bạn thiết kế web/blog cá nhân.


CSS

* {
   margin: 0px;
   padding: 0px;
   font-weight: 200;
   font-family: segoe ui, helvetica neue, helvetica, arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}
body {
   background: #fafafa;
} 
.container {
   width: 210px;
   height: 40px;
   position: fixed;
   top: 50%;
   left: 50%;
   margin-left: -105px;
   margin-top: -20px;
}
p {
   float: left;
   line-height: 40px;
   font-size: 160%;
   color: #333;
}
.scroller {
   height: 40px;
   line-height: 40px;
   float: left;
   margin-left: 7px;
   overflow: hidden;
}
.scroller span {
   display: block;
   font-size: 160%;
   color: #222;
}
.scroller .inner {
   animation: scroll 5s infinite ease-out;
}
@keyframes scroll {
   15%  {margin-top: 0px;}
   30%  {margin-top: 0px;}
   45%  {margin-top: -40px;}
   60%  {margin-top: -40px;}
   75%  {margin-top: -80px;}
   90%  {margin-top: -80px;}
   100% {margin-top: 0px;}
}

HTML

<div class="container">
  <p>Trường</p>
  <div class="scroller">
   <div class="inner">
      <span>Nguyễn.</span>
      <span>Đẹpzai.</span>
      <span>Ciute.</span>
    </div>
  </div>
</div>

Result

Codepen.io

Sunday, February 25, 2018

Tạo widget Recent Comment với avatar bo tròn tuyệt đẹp cho Blogspot

Hello xin chào tất cả các bạn, chào mừng các bạn trở lại với blog Bác Sĩ Windows.
Tình hình là mới tìm được một widget Recent Comment (bình luận gần đây) trên mạng, và mang về chỉnh CSS để xài trong blog này. Thấy nhiều bạn chắc cũng thích, chưa gì đã "ăn trộm" về xài rồi, thôi thì viết bài chia sẻ luôn cho ai muốn xài thì xài. Chán, mỗi lần làm ra cái gì mới là cứ bị auto copy :v
Tạo widget Recent Comment với avatar bo tròn tuyệt đẹp cho Blogspot - Bác Sĩ Windows
Đây là một widget gọn nhẹ giúp hiện ra những bình luận mới nhất, giúp bạn dễ dàng quản lý được ai đã bình luận trên trang web của mình để tiện việc theo dõi & trả lời một cách nhanh chóng. Demo xem tại chân trang của blog mình.
Không linh tinh nữa, cùng xem cách thực hiện nhé.

Các bước thực hiện

Bước 1. Vào phần Bố cục, tạo một widget HTML/Javascript.
Bước 2. Dán toàn bộ code này vào:
<style>
.comment-info2_BSW {clear: both; width: 100%; float: left; margin: 0 0 15px; }
.comment-info2_BSW .left {background: #dedede; padding: 3px 15px; border-radius: 100px; display: block; text-transform: uppercase; font: 400 12px Roboto;}
.comment-info2_BSW .right a {font: 500 12px Roboto,sans-serif; text-transform: uppercase; background: #dedede; padding: 3px 15px; box-sizing: border-box; display: block; border-radius: 100px;}
.comment-info2_BSW .right a:hover {opacity: .8}
ul.idbcomments{list-style:none;margin:0;padding:0}.idbcomments li{display:block;clear:both;overflow:hidden;list-style:none;border-bottom:0!important;word-break:break-all;padding:0 0 7px!important}.idbcomments li .avatarImage{float:left;margin-right:12px;position:relative;overflow:hidden}.idbcomments li img{border-radius:100%;position:relative;overflow:hidden;display:block;width:45px;height:45px}.idbcomments li a{font-weight:700}.idbcomments li span{color: #666; display: block; background: #dedede; padding: 10px; border-radius: 100px}
</style>
<script type="text/javascript">
//<![CDATA[
// Recent Comments
function idbcomments(a) {
    var e;
    e = '<ul class="idbcomments">';
    for (var t = 0; numComments > t; t++) {
        var r, o, n, i;
        if (t == a.feed.entry.length) break;
        e += "<li>";
        for (var d = a.feed.entry[t], s = 0; s < d.link.length; s++) "alternate" == d.link[s].rel && (r = d.link[s].href);
        for (var l = 0; l < d.author.length; l++) o = d.author[l].name.$t, n = d.author[l].gd$image.src;
        n = -1 != n.indexOf("/s1600/") ? n.replace("/s1600/", "/s" + avatarSize + "-c/") : -1 != n.indexOf("/s220/") ? n.replace("/s220/", "/s" + avatarSize + "-c/") : -1 != n.indexOf("/s512-c/") && 0 != n.indexOf("http:") ? "http:" + n.replace("/s512-c/", "/s" + avatarSize + "-c/") : -1 != n.indexOf("blogblog.com/img/b16-rounded.gif") ? "https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZNVNetH2YivKHnQI3zGBKtXAaP9uAl3frvmn_HzF87UIgCh8cwiqVCZvyG8-ZZ0aTYE5N1pcONdRVMyjIC4zx5iIfSYJ-UWw-PQ0QoX5qcWb487hQQZi7lFDNCErH4DgcQsgjzHabSwiq/" + avatarSize + "/blogger.png" : -1 != n.indexOf("blogblog.com/img/openid16-rounded.gif") ? "https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhnJitXs93MCUkKUsnlY2zw2bvRLw_LRSvDcLE5n5htyqAUxtMsS5ilfJWXH1-AiOORv1BcD5MnzE9OCJ1dhCZ4ULED72jtMcXZgKcy9oKTcX4sv_HdIsz3auEO8_dHa2A66aXZ6F5Dco_5/" + avatarSize + "/openid.png" : -1 != n.indexOf("blogblog.com/img/blank.gif") ? -1 != defaultAvatar.indexOf("gravatar.com") ? defaultAvatar + "&s=" + avatarSize : defaultAvatar : n, 1 == showAvatar && (i = 1 == roundAvatar ? "avatarRound" : "", e += '<div class="avatarImage ' + i + '"><a title="Truy cập đến bình luận đó" href="' + r + '"><img class="' + i + '" src="' + n + '" alt="' + o + '" width="' + avatarSize + '" height="' + avatarSize + '"/></a></div>'), e += '<a style="display:none" href="' + r + '">' + o + "</a>";
        var A = d.content.$t,
            v = A.replace(/(<([^>]+)>)/gi, "");
        "" != v && v.length > characters ? (v = v.substring(0, characters), v += "&hellip;", 1 == showMorelink && (v += '<a href="' + r + '">' + moreLinktext + "</a>")) : v = v, e += "<span>" + v + "</span>", e += "</li>"
    }
    e += "</ul>";
    var c = "";
    0 == hideCredits && (c = "display:block;"), e += "", document.write(e)
}
var numComments = 5,
    showAvatar = !0,
    avatarSize = 42,
    roundAvatar = !0,
    characters = 30,
    showMorelink = !1,
    defaultAvatar = "https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPE-HjnS5ADeV-YIE4SeMnfsiEpOWiXcQor7DYGKT_wNXdE7h9ZM3XoZHYj-LhH85AiFkzAIIU2KixsYj19fpbWzputqJ2si0IuVWZCLQUklbeEBWLAq84MgC9YH6hFSW0edMvgv_IpMqP/s35/Logo-Bac-Si-Windows.png",
    hideCredits = !0,
    numComments = numComments || 5,
    avatarSize = avatarSize || 60,
    characters = characters || 25,
    defaultAvatar = defaultAvatar || "https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPE-HjnS5ADeV-YIE4SeMnfsiEpOWiXcQor7DYGKT_wNXdE7h9ZM3XoZHYj-LhH85AiFkzAIIU2KixsYj19fpbWzputqJ2si0IuVWZCLQUklbeEBWLAq84MgC9YH6hFSW0edMvgv_IpMqP/s35/Logo-Bac-Si-Windows.png",
    moreLinktext = moreLinktext || " More &raquo;",
    showAvatar = "undefined" == typeof showAvatar ? !0 : showAvatar,
    showMorelink = "undefined" == typeof showMorelink ? !1 : showMorelink,
    roundAvatar = "undefined" == typeof roundAvatar ? !0 : roundAvatar,
    hideCredits = "undefined" == typeof hideCredits ? !1 : roundAvatar;
//]]>
</script>
<script type="text/javascript" src="/feeds/comments/default?alt=json&amp;callback=idbcomments"></script>
<div class='comment-info2_BSW'>
<div class='left'>
Hiện có <b><span id='Stats1_totalComments'></span></b> bình luận
</div>
<div class='right'><a href='/cmt' target='_blank' title='Xem 200 bình loạn gần đây'>View all <i class='fa fa-angle-right' style='margin:0 0 0 5px'/></i></a>
</div>
</div>
<script type="text/javascript">
//<![CDATA[
function totalPosts(json){document.getElementById('Stats1_totalPosts').innerHTML=json.feed.openSearch$totalResults.$t};function totalComments(json){document.getElementById('Stats1_totalComments').innerHTML=json.feed.openSearch$totalResults.$t};document.write('<script type=\"text/javascript\" src=\"/feeds/posts/default?alt=json-in-script&max-results=0&callback=totalPosts\"><\/script><script type=\"text/javascript\" src=\"/feeds/comments/default?alt=json-in-script&max-results=0&callback=totalComments\"><\/script>');
//]]>
</script>
Bước 3. Lưu tiện ích. Nhớ chỉnh lại một số thông số để phù hợp với blog của bạn.

Lời kết

Đây là widget gọn và nhẹ giúp bạn dễ dàng quản lý được nhận xét/bình luận trên blog của mình. Ngoài ra mình có thêm code thống kê tổng số bình luận trên blog vào để người xẻm có thể biết được hiện tại có bao nhiêu bình luận trên blog. Bạn có thể xóa nếu không muốn nhé.
Nếu thấy bài viết hay & hữu ích hãy bình luận và chia sẻ nhé. Ngoài ra nếu thực hiện không được hoặc xảy ra lỗi thì cũng bình luận xuống bên dưới để mình giúp đỡ (nếu được). Chúc các bạn thành công.
Source code: idblanter.com

Wednesday, February 14, 2018

Tạo intro Chúc Mừng Năm Mới tuyệt đẹp chỉ bằng CSS và HTML

Hello xin chào tất cả các bạn, chào mừng các bạn đã quay lại với blog Bác Sĩ Windows.
Bài viết đầu tiên trên blog cũng là bài viết mình tâm đắc và yêu thích nhất trong các thủ thuật blogspot mà mình từng viết. Tại vì nhìn nó đẹp vch kkk


Cụ thể đây là bài viết hướng dẫn các bạn làm một đoạn chữ giới thiệu giữa màn hình kèm theo một số hiệu ứng bằng CSS để trang trí cho blog bạn thêm phần đẹp và sinh động hơn, có thể xem demo ngay tại trang chủ. Giống như cái bài viết hồi lúc trước mình viết để trang trí tết gì gì ấy quên rồi, bài viết này là mình lấy lại code từ đó rồi chỉnh sửa một tí theo sở thích các nhân nhìn cho phù hợp với blog!
Live Demo
Không tinh linh luyên thuyên nữa, bắt đầu thôi!

Các bước thực hiện

Bước 1. Vào trang chỉnh sửa HTML của Blogspot.
Bước 2. Tim thẻ <body> và dán đoạn code dưới đây vào phía sau thẻ đó.
<b:if cond='data:blog.pageType == &quot;index&quot;'>
<style>
#intro_homepage{position:relative;display:table;width:100%;height:60vh;margin:0!important;padding:0!important;z-index:999;background:url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmbvYRx_NO9X0IqtRCOSO9kuIb0YhAyrwQE_tfAaeFXycsg_-YdIenYh5bKZ1Vfyb7ePbs_tJ00-Zf_ohN1A6gs5cTjHk8-ayTvWT0ojfDb63WO7bD7Kmbl3LrAJg3MqWIrVJlT-bLCrXw/s1600/beautiful-girl------------www-bacsiwindows-com+%25288%2529.jpg) no-repeat center center!important;background-size:cover!important}
#intro_homepage:before{content: &#39;&#39;; opacity: 1; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 0; background: linear-gradient(transparent, #050a18)}
#intro_homepage:after{content:&#39;&#39;;z-index:0;position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(transparent,rgba(51, 51, 51, 0.15) 0%,rgba(12,23,36,0.4))}
.intro_homepage_content{position:relative;z-index:3}
.intro_label h2{animation:zoomInUp 6s;font-size:45px;font-weight:700;color:rgba(255,255,255,.85);letter-spacinggg:0;margin:0 0 .25em;padding:0;font-family:&quot;Roboto Condensed&quot;,sans-serif;text-transform:uppercase}
.intro_label p{animation: zoomInDown 4s; text-transform: uppercase; font-size: 16px; font-weight: 400; color: rgba(255,255,255,0.7); margin: 0; padding: 0; letter-spacing: 2px}
.intro_label{margin:0 auto;text-align:center;padding:0}
.intro_buttondown a{position:absolute;bottom:10%;left:50%;z-index:2;display:inline-block;-webkit-transform:translate(0,-50%);transform:translate(0,-50%);color:#fff;font:normal 400 20px/1 &#39;Josefin Sans&#39;,sans-serif;letter-spacinggg:.1em;text-decoration:none;transition:opacity .3s}
.meta_{display:table-cell;vertical-align:middle;text-align:center}
#intro_buttondown a span{position:absolute;top:-45px;left:50%;width:22px;height:22px;margin-left:-12px;border-left:1px solid #FFF;border-bottom:1px solid #fff;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-animation:sdb05 2s infinite;animation:sdb05 2s infinite;box-sizing:border-box}
#intro_buttondown a{animation:zoomInDownn 8s}
@-webkit-keyframes sdb05{0%{opacity:0}50%{opacity:1}100%{opacity:0}}
@keyframes sdb05{0%{opacity:0}50%{opacity:1}100%{opacity:0}}
#intro_buttondown a span:nth-of-type(1){-webkit-animation-delay:0s;animation-delay:0s}
#intro_buttondown a span:nth-of-type(2){-webkit-animation-delay:.2s;animation-delay:.2s}
#intro_buttondown a span:nth-of-type(3){-webkit-animation-delay:.4s;animation-delay:.4s}
.xem-hd{text-align:right;width:1080px;font-size:16px;color:#fff;text-transform:uppercase;letter-spacinggg:0;font-weight:300;position:absolute;bottom:20px;right:30px;z-index:9999}
.xem-hd a{color:rgba(255,255,255,.5);animation:slideToLeft 2s}
.xem-hd a:hover{color:#fff}
</style>
<div id='intro_homepage'>
<div class='meta_'>
<div class='intro_homepage_content'>
<div class='intro_label'>
<h2 class='_title'><i aria-hidden='true' class='fa fa-gg' style='margin:0 20px 0 0'/>Chúc Mừng Năm Mới 2018<i aria-hidden='true' class='fa fa-gg' style='margin:0 0 0 20px'/></h2>
<p>An Khang Thịnh Vương - Vạn Sự Như Ý - Bác Sĩ Windows</p>
</div>
</div></div>
<div class='xem-hd'>
  <a href='/' target='blank' title='Xem hướng dẫn'>Xem hd <i class='fa fa-angle-right'/></a>
</div>
<section class='intro_buttondown' id='intro_buttondown'>
<a href='#continue'><span/><span style='margin-top: 10px'/><span style='margin-top: 20px'/></a>
</section>
<div class='meta_'>
</div>
</div>
<div id='continue'/>
</b:if>
Bước 3. Lưu mẫu, và thưởng thức thôi!

Tùy chỉnh

  • Đoạn màu đỏ là chỉ giới hạn nó chỉ hiển thị ở trang chủ, bạn có thể xóa nó nếu muốn nó hiển thị ở tất cả các trang nhé.
  • Đoạn màu xanh là link ảnh, có thể thay ảnh khác nếu không thích hình ảnh có sẵn.
  • Đoạn in đậm chắc không cần nói cũng biết nhỉ!

Nâng cao

Nếu bạn muốn tạo dòng chữ chạy như Bác Sĩ Windows Blog thì thêm code này vào sau <body> thay cho đoạn code trên.
<b:if cond='data:blog.pageType == &quot;index&quot;'>
<style>
#intro_homepage-bsw{user-select:none;position:relative;display:table;width:100%;height:100vh;margin:0!important;padding:0!important;z-index:999;background:url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVJlAPNetHx8nmlI1ilUEsD8pVicOqzdMHyTEvnrP6KLv4EFsjlzh1APGAplBK7ldikdfSAHH9XNKIuCW9I2d-fV-AEOrnwhDdxXTDsb8mEmh0PO1j_OIWWLqNq-vnb8NJ40Dg0RrC3is7/s1600/beautiful-girl------------www-bacsiwindows-com+%25283%2529.jpg) no-repeat center center!important;background-size:cover!important}
#intro_homepage-bsw:before{content: &#39;&#39;; opacity: .4; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 0; background: linear-gradient(transparent, #050a18)}
#intro_homepage-bsw:after{content:&#39;&#39;;z-index:0;position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(transparent,rgba(51, 51, 51, 0.15) 0%,rgba(12,23,36,0.4))}
.intro_homepage-bsw_content-bsw{position:relative;z-index:3}
.intro_label-bsw h2{animation:zoomInUp 6s;font-size:45px;font-weight:700;color:rgba(255,255,255,.85);letter-spacinggg:0;margin:0 0 .25em;padding:0;font-family:&quot;Roboto Slab&quot;,sans-serif;text-transform:uppercase}
.intro_label-bsw p{font-family:Roboto Slab,sans-serif;animation: zoomInDown 4s; text-transform: uppercase; font-size: 16px; font-weight: 400; color: rgba(255,255,255,0.7); margin: 0; padding: 0; letter-spacing: 2px}
.intro_label-bsw{margin:0 auto;text-align:center;padding:0}
.intro_buttondown-bsw a{position:absolute;bottom:10%;left:50%;z-index:2;display:inline-block;-webkit-transform:translate(0,-50%);transform:translate(0,-50%);color:#fff;font:normal 400 20px/1 &#39;Josefin Sans&#39;,sans-serif;letter-spacinggg:.1em;text-decoration:none;transition:opacity .3s}
.meta_{display:table-cell;vertical-align:middle;text-align:center}
#intro_buttondown-bsw a span{position:absolute;top:-45px;left:50%;width:22px;height:22px;margin-left:-12px;border-left:1px solid #FFF;border-bottom:1px solid #fff;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-animation:sdb05 2s infinite;animation:sdb05 2s infinite;box-sizing:border-box}
#intro_buttondown-bsw a{animation:zoomInDownn 8s}
@-webkit-keyframes sdb05{0%{opacity:0}50%{opacity:1}100%{opacity:0}}
@keyframes sdb05{0%{opacity:0}50%{opacity:1}100%{opacity:0}}
#intro_buttondown-bsw a span:nth-of-type(1){-webkit-animation-delay:0s;animation-delay:0s}
#intro_buttondown-bsw a span:nth-of-type(2){-webkit-animation-delay:.2s;animation-delay:.2s}
#intro_buttondown-bsw a span:nth-of-type(3){-webkit-animation-delay:.4s;animation-delay:.4s}
.xem-hd{text-align:right;width:1080px;font-size:16px;color:#fff;text-transform:uppercase;letter-spacinggg:0;font-weight:300;position:absolute;bottom:20px;right:30px;z-index:9999}
.xem-hd a{color:rgba(255,255,255,.5);animation:slideToLeft 2s}
.xem-hd a:hover{color:#fff}
</style>
<div id='intro_homepage-bsw'>
<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyRwDzJwdBzYgSRexWsOq93iY7UVwcTyQOK_1migI-up8RGttM2tCR5NrA1SRIrQpGK_hnDy81AO9xoiia8cycXGcS4_rylU9k5nMTRsli4h4XXGjX_0u4oUKjDUABMmn6H2fF0mqB2S6_/s1600/right_phao-hoa-_bacsiwindows.png' style='position: absolute; right: 0; width: 10%;'/>
<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiakRKhu7IvcksXxRAJDOzwSKcDugevLIXzSqYYK2Nvi9_q_gCx6qqVvgWBi5PAS1xnzlOJDB6FDKOtWbs-QE6xGH8ol7TgiqcEUMv9aqAT81_tMQwNrJUuy4uZh_fiqyWTw6m0IJ56scEG/s1600/left_phao-hoa-_bacsiwindows.png' style='position: absolute; left: 0; width: 10%;'/>
<div class='meta_'>
<div class='intro_homepage-bsw_content-bsw'>
<div class='intro_label-bsw'>
<h2 class='_title'><i aria-hidden='true' class='fab fa-gg' style='margin:0 20px 0 0'/>Chúc Mừng Năm Mới 2018<i aria-hidden='true' class='fab fa-gg' style='margin:0 0 0 20px;transform:rotate(180deg)'/></h2>
<p><div class='bacsiwindows_happy-new-year2'><span id='text'/><div class='bac-si-windows-happy-new-year2' id='console'>I</div></div>
</p>
</div>
</div></div>
<div class='xem-hd'>
<a href='https://bacsiwindowscom.blogspot.com/2017/11/tao-intro-tuyet-dep-cho-blogspot-chi-tu-css-va-html.html' target='blank' title='Xem hướng dẫn'>Xem hướng dẫn <i class='fa fa-angle-right'/></a>
</div>
<section class='intro_buttondown-bsw' id='intro_buttondown-bsw'>
<a href='#continue'><span/><span style='margin-top: 10px'/><span style='margin-top: 20px'/></a>
</section>
<div class='meta_'>
</div>
</div>
<div id='continue'/>
</b:if>
Thêm đoạn js này vào trước </body>
<script>//<![CDATA[
consoleText(['An Khang Thịnh Vượng - Vạn Sự Như Ý','12 Tháng Phú Quý, 365 Ngày Phát Tài, 8760 Giờ Sung Túc, 525600 Phút Thành Công, 31536000 Giây Hạnh Phúc', 'Chúc năm mới sức khỏe dẻo dai, công việc thuận lợi thăng tiến dài dài, phi những nước đại tiến tới thành công.','Chúc Mừng Năm Mới - Bác Sĩ Windows - Happy New Year ^_^'], 'text',['white']);

function consoleText(words, id, colors) {
if (colors === undefined) colors = ['#fff'];
var visible = true;
var con = document.getElementById('console');
var letterCount = 1;
var x = 1;
var waiting = false;
var target = document.getElementById(id)
target.setAttribute('style', 'color:' + colors[0])
window.setInterval(function() {

if (letterCount === 0 && waiting === false) {
waiting = true;
target.innerHTML = words[0].substring(0, letterCount)
window.setTimeout(function() {
var usedColor = colors.shift();
colors.push(usedColor);
var usedWord = words.shift();
words.push(usedWord);
x = 1;
target.setAttribute('style', 'color:' + colors[0])
letterCount += x;
waiting = false;
}, 100)
} else if (letterCount === words[0].length + 1 && waiting === false) {
waiting = true;
window.setTimeout(function() {
x = -1;
letterCount += x;
waiting = false;
}, 100)
} else if (waiting === false) {
target.innerHTML = words[0].substring(0, letterCount)
letterCount += x;
}
}, 120)
window.setInterval(function() {
if (visible === true) {
con.className = 'bac-si-windows-happy-new-year2'
visible = false;

} else {
con.className = 'bac-si-windows-happy-new-year2'

visible = true;
}
}, 100)
}
//]]></script>

Dòng chữ nhấp nháy

<div id='happynewyear-bacsiwindows'>Happy New Year - Chúc Mừng Năm Mới 2018</div>
<style>
#happynewyear-bacsiwindows{font-family:'Dancing Script',cursive;font-weight:700;font-size:3em;padding:.5em 0 0;text-align:center;display:block;color:#7577a9;background:#fff url(https://res-zaloapp-te-vnso-zn-4.zadn.vn/pc/banners/header-t1-3.png) no-repeat;animation:blink-text-bsw 1.5s infinite;text-shadow:0 0 10px}
@keyframes blink-text-bsw{0%{color:#e69034}10%{color:#3179F6}20%{color:#008000}30%{color:#00CCBB}40%{color:#0AC353}50%{color:#EF3CE8}60%{color:#A3F4C7}70%{color:#2e857e}80%{color:#8D8D9E}90%{color:#6821c3}100%{color:#dd2a84}}
</style>

Tổng thể

Với một ít CSS kèm một xíu HTML, mình đã mang đến cho các bạn một tùy chọn trang trí Blog nữa, nếu thấy hay hoặc hữu ích hãy chia sẻ bài viết nhé, cảm ơn các bạn.
Ảnh: www.nguyenanhduy.com

Monday, January 22, 2018

Tạo nút Back To Top với hiệu ứng Hover bằng CSS cực đẹp cho Blogspot

Chào các bạn, theo yêu cầu của một số bạn muốn mình chia sẻ cách làm nút back to top mà mình đang sử dụng trên Blog. Thì bài viết hôm nay mình sẽ hướng dẫn các bạn cách làm nút back to top tuyệt đẹp và chất này!
Tạo nút Back To Top với hiệu ứng Hover bằng CSS cực đẹp và chất
Bạn có thể xem Demo ngay tại trang chủ của bacsiwindows.com

Cách thực hiện

Bước 1. Dán CSS này vào trước thẻ ]]></b:skin>
#bacsiwindows-go-top{position:absolute;top:-35px;right:50%;background:#fff;color:#7577a9;border:6px solid #dddddd;height:60px;width:60px;text-align:center;line-height:60px;border-radius:0;font-size:1.2em;z-index:69;transform:rotate(45deg);margin:0 -50px}
#bacsiwindows-go-top:hover{border-radius:0 50px 50px;color:#7577a9!important}
#bacsiwindows-go-top i{transform:rotate(-45deg)}
Bước 2. Tìm ID của phần Footer trong Template của bạn.
Là sao? Ví dụ trên bacsiwindows.com, phần footer có ID là #lower. Thì bạn tìm trong mẫu id='lower'
Tương tự, nếu ID của phần Footer trong mẫu của bạn là #lower-wrapper hoặc #footer-wrapper thì bạn tìm trong mẫu đoạn code tương ứng: <div id='lower-wrapper'> hoặc <div id='footer-wrapper'>
và dán code HTML này vào sau thẻ đó.
<a href='javascript:;' id='bacsiwindows-go-top'><i class='fa fa-chevron-up'/></a>    
Để kiểm tra nhanh, hãy click chuột phải vào phần Footer và chọn Kiểm tra phần tử.

Bước 3. Tìm thẻ </body> và dán đoạn javascript này phía trên nó.
<script type='text/javascript'>
    $('#bacsiwindows-go-top').on('click', function (e) {
        e.preventDefault();
        $('html,body').animate({
            scrollTop: 0
        }, 999);
    });
// bacsiwindows.com
</script>
Bước 4. Lưu mẫu.

Tổng kết

Đây là nút back to top được Bác Sĩ Windows viết bằng CSS cho Blogspot. Nếu không thực hiện được hãy bình luận bên dưới để được trợ giúp nhé. Chúc thành công!

Tạo Popup hiện ra khi click với hiệu ứng đẹp bằng CSS cho Blogspot

Tạo Popup hiện ra khi click với hiệu ứng đẹp bằng CSS cho Blogspot. Sử dụng thẻ HTML :target, popup được thiết kế chỉ hoàn toàn bằng CSS với hiệu ứng và transform tuyệt đẹp cho Blogspot.
Bạn có thể dùng nó để tạo popup thông báo, liên hệ, lưu ý,...

Xem demo

Click Me


Chèn code

Quăng hết đống code này vào sau thẻ <body>
<style>#bsw_popup{top:0;left:0;right:0;bottom:0;position:fixed;opacity:0;visibility:hidden;transition:.5s;transform:scale(1.2)}
#bsw_popup:target{transform:scale(1);background:rgba(0,0,0,.2);opacity:1;visibility:visible;position:fixed;top:0;left:0;right:0;bottom:0;margin:0;z-index:999999999999;transition:.5s}
.bsw_popup_{background:#fff;border-radius:4px;z-index:999;width:600px;max-width:100%;position:fixed;top:45%;left:50%;transform:translate(-50%,-50%);margin:0;padding:20px;box-sizing:border-box;box-shadow:0 0 100px rgba(0,0,0,.1)}
.bsw_popup_ h2{margin:0 0 .75em;padding:0;text-align:center;font-weight:700;font-family:Roboto,sans-serif;color:#4267b2}
.bsw_popup_ h3{margin:0 0 5px;padding:0;font:500 15px Roboto;text-transform:uppercase}
.bsw_popup_ p{margin:0 0 20px;padding:0;font:400 15px Roboto;color:#555;line-height:1.5}
.bsw_popup_ p a{font-weight:700;color:#555}
.bsw_popup_ p a:hover{text-decoration:underline}
<!-- code popup bacsiwindows.com -->
</style>
<div id='bsw_popup'>
    <div class='bsw_popup_'>
        <h2>Hướng dẫn bình luận</h2>
        <h3>Chèn link</h3>
        <p>Sử dụng thẻ <code>&amp;lt;a href=&amp;#39;LINK&amp;#39;&amp;gt;TÊN_HIỂN_THỊ&amp;lt;/a&amp;gt;</code></p>
        <h3>Chèn hình ảnh</h3>
        <p><code>[img] LINK_ANH [/img]</code> - sử dụng công cụ bên dưới để upload ảnh.</p>
        <h3>Định dạng chữ</h3>
        <p> &amp;lt;b&amp;gt; <b>Chữ in đậm</b> &amp;lt;/b&amp;gt;<br/> &amp;lt;i&amp;gt; <i>Chữ in nghiêng</i> &amp;lt;/i&amp;gt;<br/> &amp;lt;u&amp;gt; <u>Chữ gạch chân</u> &amp;lt;/u&amp;gt;<br/> &amp;lt;strike&amp;gt; <strike>Chữ gạch ngang</strike> &amp;lt;/strike&amp;gt;<br/> </p>
        <h3>Chèn một đoạn Code</h3>
        <p>Đầu tiên sử dụng <a href='//bacsiwindows.com/mahoahtml' target='blank'>công cụ này</a> để mã hóa đoạn code muốn chèn.<br/>Sau đó dùng thẻ <code>[code] CODE_ĐÃ_MÃ_HÓA [/code]</code></p><a class='close' href='#close' title='Close'><i aria-hidden='true' class='fa fa-check'/> Đã hiểu</a> </div>
</div>

Cách sử dụng

Thêm href="#bsw_popup" hoặc id="#bsw_popup" vào bất cứ thẻ nào mà bạn muốn khi click sẽ hiện popup ra là được.
Ví dụ: <a href="#bsw_popup">Mở Popup</a>

Tổng kết

Với thiết kế đẹp và cách thực hiện đơn giản, đây là mẫu popup được thiết kế bởi Bác Sĩ Windows chỉ bằng HTML và CSS nên khi sử dụng sẽ không làm ảnh hưởng đến những thành phần khác trên blog cũng như tốc độ tải trang. Cho một bình luận/chia sẻ nếu thấy hữu ích nhé.
Click Me

Hiệu ứng lazyload - load ảnh tuần tự và mượt mà bằng jquery cho Blogspot

Hiệu ứng lazyload - load ảnh tuần tự và mượt mà bằng js cho Blogspot - hiệu ứng load ảnh bằng jquery, hình ảnh sẽ được tải tuần tự từ trên xuống dưới tạo hiệu ứng mượt mà cho Blog, trông đẹp và chuyên nghiệp hơn.
Hiệu ứng lazyload - load ảnh tuần tự và mượt mà bằng jquery cho Blogspot

Cách thêm vào Blogspot

Chèn tất cả javascript này vào trước </head> trong Template.

<script type='text/javascript'>
// lazy load by bacsiwindows.com
//<![CDATA[
(function($) {
    $.fn.lazyload = function(options) {
        var settings = {
            threshold: 0,
            failurelimit: 0,
            event: "scroll",
            effect: "show",
            container: window
        };
        if (options) {
            $.extend(settings, options);
        }
        var elements = this;
        if ("scroll" == settings.event) {
            $(settings.container).bind("scroll", function(event) {
                var counter = 0;
                elements.each(function() {
                    if ($.abovethetop(this, settings) || $.leftofbegin(this, settings)) { /* Nothing. */ } else if (!$.belowthefold(this, settings) && !$.rightoffold(this, settings)) {
                        $(this).trigger("appear");
                    } else {
                        if (counter++ > settings.failurelimit) {
                            return false;
                        }
                    }
                });
                var temp = $.grep(elements, function(element) {
                    return !element.loaded;
                });
                elements = $(temp);
            });
        }
        this.each(function() {
            var self = this;
            if (undefined == $(self).attr("original")) {
                $(self).attr("original", $(self).attr("src"));
            }
            if ("scroll" != settings.event || undefined == $(self).attr("src") || settings.placeholder == $(self).attr("src") || ($.abovethetop(self, settings) || $.leftofbegin(self, settings) || $.belowthefold(self, settings) || $.rightoffold(self, settings))) {
                if (settings.placeholder) {
                    $(self).attr("src", settings.placeholder);
                } else {
                    $(self).removeAttr("src");
                }
                self.loaded = false;
            } else {
                self.loaded = true;
            }
            $(self).one("appear", function() {
                if (!this.loaded) {
                    $("<img />").bind("load", function() {
                        $(self).hide().attr("src", $(self).attr("original"))[settings.effect](settings.effectspeed);
                        self.loaded = true;
                    }).attr("src", $(self).attr("original"));
                };
            });
            if ("scroll" != settings.event) {
                $(self).bind(settings.event, function(event) {
                    if (!self.loaded) {
                        $(self).trigger("appear");
                    }
                });
            }
        });
        $(settings.container).trigger(settings.event);
        return this;
    };
    $.belowthefold = function(element, settings) {
        if (settings.container === undefined || settings.container === window) {
            var fold = $(window).height() + $(window).scrollTop();
        } else {
            var fold = $(settings.container).offset().top + $(settings.container).height();
        }
        return fold <= $(element).offset().top - settings.threshold;
    };
    $.rightoffold = function(element, settings) {
        if (settings.container === undefined || settings.container === window) {
            var fold = $(window).width() + $(window).scrollLeft();
        } else {
            var fold = $(settings.container).offset().left + $(settings.container).width();
        }
        return fold <= $(element).offset().left - settings.threshold;
    };
    $.abovethetop = function(element, settings) {
        if (settings.container === undefined || settings.container === window) {
            var fold = $(window).scrollTop();
        } else {
            var fold = $(settings.container).offset().top;
        }
        return fold >= $(element).offset().top + settings.threshold + $(element).height();
    };
    $.leftofbegin = function(element, settings) {
        if (settings.container === undefined || settings.container === window) {
            var fold = $(window).scrollLeft();
        } else {
            var fold = $(settings.container).offset().left;
        }
        return fold >= $(element).offset().left + settings.threshold + $(element).width();
    };
    $.extend($.expr[':'], {
        "below-the-fold": "$.belowthefold(a, {threshold : 0, container: window})",
        "above-the-fold": "!$.belowthefold(a, {threshold : 0, container: window})",
        "right-of-fold": "$.rightoffold(a, {threshold : 0, container: window})",
        "left-of-fold": "!$.rightoffold(a, {threshold : 0, container: window})"
    });
})(jQuery); //]]></script>
<script type='text/javascript'>
$(function() { $(&quot;img&quot;) .lazyload({ placeholder : &quot;//img1.blogblog.com/img/blank.gif&quot;, effect: &quot;fadeIn&quot; }); });</script>

Tạo widget Top những người bình luận nhiều nhất cho Blogspot

Hello xin chào tất cả các bạn, chào mừng các bạn trở lại với blog Bác Sĩ Windows.
Đây là Widget giúp thống kê những ai bình luận (nhận xét) trên blog của bạn nhiều nhất trong 1 tuần hoặc trong 30 ngày vừa qua hoặc toàn thời gian.
Tạo widget Top những người bình luận nhiều nhất tuần cho Blogspot
Giúp bạn dễ dàng quản lý được ai là người thường xuyên ghé tham và bình luận tích cực trên blog của mình.

Các bước thực hiện

Chèn CSS vào trước thẻ ]]></b:skin>

#bcd-140504-widget-top-commentator .avatar{float:left;margin:0 8px 0 0;display:block;position:absolute;left:24px;bottom:-12px}
#bcd-140504-widget-top-commentator .avatar img{width:15px;height:15px;border:2px solid white;border-radius:100%}
#bcd-140504-widget-top-commentator .avatar a{pointer-events:none}
#bcd-140504-widget-top-commentator .content a{pointer-events:none;font-weight:500}
#bcd-140504-widget-top-commentator .content span{display:block;color:#777;font-size:12px}
#bcd-140504-widget-top-commentator .item{margin:0 0 20px;padding:0 0 0 50px;position:relative}
#bcd-140504-widget-top-commentator .item-0{background:url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXPmRRJO8MlwARzX6HZ15UlAZYHYiHd4CK9gGzgI2tPlnEkhiLfwMYbS-FHO4u3TDboSpZYhIzJHNVr3bxN8GOgszzeyu8tOnuVbb-ddKFHLy9CwC1EMPWBmBkcIiUeFFQyykAHBq2YhdM/s1600/TOP-1-Commentators-----------BacSiWindows-Com.png) no-repeat center center;background-size: auto; background-position: -2%}
#bcd-140504-widget-top-commentator .item-1{background:url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh6vj1iRxJPb-6_0wt8a5eP8Y3EKRPhxULKysTQfgV4Jj83SnO8TUAbuh3P35QDH9hIjCA5RICQK3AHWCclNyWxeSqyJgg25oF0bMoNADHhD_MikgGTeI7hbxX_SrGmXIYRhTcbj57did_f/s1600/TOP2-Commentators--------------BacSiWindows-Com.png) no-repeat center center;background-size: auto; background-position: -2%}
#bcd-140504-widget-top-commentator .item-2{background:url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj3BKmSBSK5RmnmUXfm8XNfg1CuVYvP5g90Ym7oXv1b4jjqk1cox7vC0IWjHSMcmlBwI7hPTjUtMm21c5Pax1L4JHZ8W6xG_UT1RR3-ecY7nhS1S3aKd-O9Gu_DYQnzpdceYsT_oEbRx8Hm/s1600/TOP-3-Commentators------------BacSiWindows-Com.png) no-repeat center center;background-size: auto; background-position: -2%}
#bcd-140504-widget-top-commentator .item-3{background:url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgt1Tib1htYu7vDMuruHnYpiZ8tuOk5RnwTqLeLcXFq56No3RoSoip1nmhqhEIuZXQCXUagWSoBxA1MErfRiODZRCmOHqcSQ5zfqYCoEmd9Q2tYyvqHcONrZFLw0MOA5XC0M7mKxnMYBRia/s1600/TOP-4-Commentators------------BacSiWindows-Com.png) no-repeat center center;background-size: auto; background-position: -2%}
#bcd-140504-widget-top-commentator .item-4{background:url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEintb6xyztos_iwEOf8GdYZzcyEhQUioJkX2VLYJk_bPc6Hpq1IWSeG5KR60k4eA6FcB9QN8uJvlFqJyqNixBSCQlkueIpZ0lDZbqTIIPGBgd4SYWonRwtG5xcIt6hls_8UwltZTfWxACwl/s1600/TOP-5-Commentators------------BacSiWindows-Com.png) no-repeat center center;background-size: auto; background-position: -2%}
#bcd-140504-widget-top-commentator .item-last{margin:10px 0 0 0}
#bcd-140504-widget-top-commentator .order-number{display:none;font-size:18px;color:#fff;float:left;margin:0 10px 0 0;background:#ff6262;padding:6px 10px;border-radius:4px;font-weight:300}
#bcd-140504-widget-top-commentator .order-wrap{margin:0 0 15px 0}
Tạo một Widget HTML/Javascript, và dán đoạn code này vào, chỉnh sửa các thông số cho phù hợp rồi lưu lại.
<script type="text/JavaScript">
/*User setting*/
var _140504_Day_Number = 7;/*_140504_Day_Number*/
var _140504_Name_Number = 5;/*_140504_Name_Number*/
var _140504_Lang_comments = 'bình luận';/*_140504_Lang_comments*/
var _140504_Hide_Copyright_Link = true;/*_140504_Hide_Copyright_Link*/
var _140504_Show_Thumbnail = true;/*_140504_Show_Thumbnail*/
var _140504_Show_Order_Number = false;/*_140504_Show_Order_Number*/
var _140504_Exclude_Users = 'Trường Nguyễn';/*_140504_Exclude_Users*/
var _140504_Exclude_Uri = '';/*_140504_Exclude_Uri*/
var host = '';/*host*/
//bacsiwindows.com
_s7EaE = ['undefined','bcd-140504-widget-top-commentator',',',',','<script type="text/JavaScript" src="','"><\/script>','blog-','.comments','','category','','title','','subtitle','Anonymous','','http://img1.blogblog.com/img/anon36.png','name','uri','gd$image','http://img1.blogblog.com/img/blank.gif','entry','post-','','published','category','','title','','content','','summary','','comments','link','alternate','replies','Anonymous','','http://img1.blogblog.com/img/anon36.png','name','uri','gd$image','http://img1.blogblog.com/img/blank.gif','','media$thumbnail','thr$total',' ','','','thr$in-reply-to','thr$in-reply-to','','gd$extendedProperty','blogger.itemClass','pid-','','-','-','<div id="','">','<div class="order-number">','</div><div class="order-wrap">','<div class="item item-',' ','','">','<div class="avatar"> <a href="','" target="_blank"><img src="','"/></a> </div>','<div class="content"> <a href="','" target="_blank">','</a> <span>',' ','</span> </div> <div class="clear"></div> </div>','</div>','<div class="clear"></div>','<div class="info"><a target="_blank" href="http://www.bacsiwindows.com" title="Widget Info">BSW</a></div></div>','Anonymous','','/feeds/comments/summary?alt=json-in-script&max-results=200&start-index=','&callback=_fKlD','/feeds/comments/summary?alt=json-in-script&max-results=200&callback=_fKlD'];if(typeof(_vIsL)==_s7EaE[0]){var _vIsL=false;}if(!_vIsL){_vIsL=true;var _vRyL=_s7EaE[1];var _vWtJ=_140504_Exclude_Users.split(_s7EaE[2]);var _vQvT=_140504_Exclude_Uri.split(_s7EaE[3]);function _fMeZ(url){document.write(_s7EaE[4]+url+_s7EaE[5]);}function _fNhE(json){var _vWcG=new Object();_vWcG.id=json.feed.id.$t;key=_s7EaE[6];_vRcB=_vWcG.id.indexOf(key);_vWcG.id=_vWcG.id.substring(_vRcB+key.length);_vWcG.id=_vWcG.id.replace(_s7EaE[7],_s7EaE[8]);_vWcG.cate=new Array();if(_s7EaE[9] in json.feed){for(_vXaN=0;_vXaN<json.feed.category.length;_vXaN++){_vWcG.cate[_vXaN]=json.feed.category[_vXaN].term;}}_vWcG.title=_s7EaE[10];if(_s7EaE[11] in json.feed){_vWcG.title=json.feed.title.$t;}_vWcG.subtitle=_s7EaE[12];if(_s7EaE[13] in json.feed){_vWcG.subtitle=json.feed.subtitle.$t;}_vWcG.admin=new Object();_vWcG.admin.name=_s7EaE[14];_vWcG.admin.uri=_s7EaE[15];_vWcG.admin.avatar=_s7EaE[16];if(_s7EaE[17] in json.feed.author[0]){_vWcG.admin.name=json.feed.author[0].name.$t;}if(_s7EaE[18] in json.feed.author[0]){_vWcG.admin.uri=json.feed.author[0].uri.$t;}if(_s7EaE[19] in json.feed.author[0]){if(json.feed.author[0].gd$image.src!=_s7EaE[20]){_vWcG.admin.avatar=json.feed.author[0].gd$image.src;}}_vWcG.total_entry=Number(json.feed.openSearch$totalResults.$t);_vWcG.start_index=Number(json.feed.openSearch$startIndex.$t);_vWcG.item_per_page=Number(json.feed.openSearch$itemsPerPage.$t);_vWcG.entry_number=0;if(_s7EaE[21] in json.feed){_vWcG.entry_number=json.feed.entry.length;}_vWcG.entry=new Array();for(_vXaN=0;_vXaN<_vWcG.entry_number;_vXaN++){_vWcG.entry[_vXaN]=new Object();temp=new Object();entry=json.feed.entry[_vXaN];temp.id=entry.id.$t;key=_s7EaE[22];_vRcB=temp.id.indexOf(key);temp.id=temp.id.substring(_vRcB+key.length);temp.published=_s7EaE[23];if(_s7EaE[24] in entry){temp.published=entry.published.$t;}temp.cate=new Array();if(_s7EaE[25] in entry){for(j=0;j<entry.category.length;j++){temp.cate[j]=entry.category[j].term;}}temp.title=_s7EaE[26];if(_s7EaE[27] in entry){temp.title=entry.title.$t;}temp.content=_s7EaE[28];if(_s7EaE[29] in entry){temp.content=entry.content.$t;}temp.summary=_s7EaE[30];if(_s7EaE[31] in entry){temp.summary=entry.summary.$t;}temp.link=_s7EaE[32];temp.reply_label=_s7EaE[33];if(_s7EaE[34] in entry){for(j=0;j<entry.link.length;j++){if(entry.link[j].rel==_s7EaE[35]){temp.link=entry.link[j].href;}if(entry.link[j].rel==_s7EaE[36]){temp.reply_label=entry.link[j].title;}}}temp.author=new Object();temp.author.name=_s7EaE[37];temp.author.uri=_s7EaE[38];temp.author.avatar=_s7EaE[39];a0=entry.author[0];if(_s7EaE[40] in a0){temp.author.name=a0.name.$t;}if(_s7EaE[41] in a0){temp.author.uri=a0.uri.$t;}if(_s7EaE[42] in a0){if(a0.gd$image.src!=_s7EaE[43]){temp.author.avatar=a0.gd$image.src;}}temp.thumb=_s7EaE[44];if(_s7EaE[45] in entry){temp.thumb=entry.media$thumbnail.url;}temp.reply_number=0;if(_s7EaE[46] in entry){temp.reply_number=Number(entry.thr$total.$t);}temp.reply_label=temp.reply_label.replace(temp.reply_number+_s7EaE[47],_s7EaE[48]);temp.reply_to=_s7EaE[49];if(_s7EaE[50] in entry){temp.reply_to=entry[_s7EaE[51]].href;}temp.pid=_s7EaE[52];if(_s7EaE[53] in entry){for(j=0;j<entry.gd$extendedProperty.length;j++){if(entry.gd$extendedProperty[j].name==_s7EaE[54]){temp.pid=entry.gd$extendedProperty[j].value;}}}temp.pid=temp.pid.replace(_s7EaE[55],_s7EaE[56]);_vWcG.entry[_vXaN]=temp;}return _vWcG;}function _fNaQ(jshort1,jshort2){for(_vXaN=0;_vXaN<jshort2.entry_number;_vXaN++){jshort1.entry[_vXaN+jshort1.entry_number]=jshort2.entry[_vXaN];}jshort1.entry_number+=jshort2.entry_number;return jshort1;}function _fTrY(date1,date2){date1=date1.split(_s7EaE[57]);date2=date2.split(_s7EaE[58]);date1=parseInt((new Date(date1[0],date1[1]-1,date1[2].substring(0,2)).getTime())/1000);date2=parseInt((new Date(date2[0],date2[1]-1,date2[2].substring(0,2)).getTime())/1000);var _vCaZ=date1-date2;if(_vCaZ<0) _vCaZ=-_vCaZ;return Math.floor(_vCaZ/86400);}var _vBwK=null;var _vPtM=[];function _fZhQ(){if(_vPtM.length>0){h=_s7EaE[59]+_vRyL+_s7EaE[60];min=Math.min(_vPtM.length,_140504_Name_Number);for(_vXaN=0;_vXaN<min;_vXaN++){if(_140504_Show_Order_Number){h+=_s7EaE[61]+(_vXaN+1)+_s7EaE[62];}h+=_s7EaE[63]+_vXaN+_s7EaE[64]+(((_vXaN+1)==min)?'item-last':_s7EaE[65])+_s7EaE[66];if(_140504_Show_Thumbnail){h+=_s7EaE[67]+_vPtM[_vXaN].uri+_s7EaE[68]+_vPtM[_vXaN].avatar+_s7EaE[69];}h+=_s7EaE[70]+_vPtM[_vXaN].uri+_s7EaE[71]+_vPtM[_vXaN].name+_s7EaE[72]+_vPtM[_vXaN].count+_s7EaE[73]+_140504_Lang_comments+_s7EaE[74];if(_140504_Show_Order_Number){h+=_s7EaE[75];}}h+=_s7EaE[76];if(!_140504_Hide_Copyright_Link){h+=_s7EaE[77];}document.write(h);}}function _fTmI(){Day0=_vBwK.entry[0].published;var _vRcB=0;admin=_vBwK.admin;for(_vXaN=0;_vXaN<_vBwK.entry_number;_vXaN++){author=_vBwK.entry[_vXaN].author;for(j=0;j<_vRcB;j++){if((_vPtM[j].name==author.name)&&(_vPtM[j].uri==author.uri)&&(_vPtM[j].avatar==author.avatar)){break;}}if(j<_vRcB){_vPtM[j].count++;}else{var _vHmR=true;if(_vWtJ.length){for(var _vLgR=0;_vLgR<_vWtJ.length;_vLgR++){if(_vWtJ[_vLgR]==author.name){_vHmR=false;break;}}}if(_vQvT.length){for(var _vLgR=0;_vLgR<_vQvT.length;_vLgR++){if(_vQvT[_vLgR]==author.uri){_vHmR=false;break;}}}if(_vHmR&&(admin.name!=author.name)&&(admin.uri!=author.uri)&&(admin.avatar!=author.avatar)&&(author.name!=_s7EaE[78])&&(author.uri!=_s7EaE[79])){_vPtM[_vRcB]=new Object;_vPtM[_vRcB].name=_vBwK.entry[_vXaN].author.name;_vPtM[_vRcB].uri=_vBwK.entry[_vXaN].author.uri;_vPtM[_vRcB].avatar=_vBwK.entry[_vXaN].author.avatar;_vPtM[_vRcB].count=1;_vRcB++;continue;}}day=_vBwK.entry[_vXaN].published;_vCaZ=_fTrY(Day0,day);if(_vCaZ>=_140504_Day_Number) break;}for(_vXaN=0;_vXaN<_vRcB-1;_vXaN++){for(j=_vXaN+1;j<_vRcB;j++){if(_vPtM[_vXaN].count<_vPtM[j].count){temp=_vPtM[_vXaN];_vPtM[_vXaN]=_vPtM[j];_vPtM[j]=temp;}}}_fZhQ();}function _fKlD(json){if(_vBwK==null){_vBwK=_fNhE(json);}else{_vWcG=_fNhE(json);_vBwK=_fNaQ(_vBwK,_vWcG);}Day0=_vBwK.entry[0].published;for(var _vXaN=0;_vXaN<_vBwK.entry_number;_vXaN++){day=_vBwK.entry[_vXaN].published;_vCaZ=_fTrY(Day0,day);if(_vCaZ>=_140504_Day_Number) break;}if(_vXaN==_vBwK.entry_number&&_vBwK.entry_number<_vBwK.total_entry){_fMeZ(host+_s7EaE[80]+(_vBwK.entry_number+1)+_s7EaE[81]);return;}_fTmI();}_fMeZ(host+_s7EaE[82]);}//bacsiwindows.com
</script>
Source code: sneeit.com
CSS edited by: bacsiwindows.com