Quảng Cáo/ Thông Báo của lớp báo k32

Tổng số Khách

Thứ Ba, 18 tháng 9, 2012

Tạo cửa sổ popup sử dụng Javascript

Đôi khi bạn phải sử dụng Popup window để tạo liên kết đến một trang web khác. Popup window thường xuyên được sử dụng trong thiết kế web. Bạn hãy click chuột vào liên kết Demo dưới đây để thấy tác dụng của thủ thuật này.

Xem Demo:


☼ Bắt đầu thủ thuật
1. Đầu tiên bạn hãy vào tài khoản blogger
2. Vào Thiết kế chọn Chỉnh sửa HTML
3. Bạn tìm thẻ.
</head>.
4. Dán code bên dưới vào sau thẻ trên.
<script type="text/javascript">
//<![CDATA[
function OpenPopup(Url,WindowName,width,height,extras,scrollbars) {
var wide = width;
var high = height;
var additional= extras;
var top = (screen.height-high)/2;
var leftside = (screen.width-wide)/2; newWindow=window.open(''+ Url +
'',''+ WindowName + '','width=' + wide + ',height=' + high + ',top=' +
top + ',left=' + leftside + ',features=' + additional + '' +
',scrollbars=1');
newWindow.focus();
}
//]]>
</script>
Tiếp theo thiết lập cấu trúc HTML như sau và đặt tại vị trí muốn hiển thị liên kết đến một trang web khác.
<a href="javascript: void(0);" onclick=" javascript:OpenPopup('http://viettin365.com/','WindowName','510','280','scrollbars=1');">Tên Hiển Thị</a>
Trong đoạn code HTML ở trên, bạn cần thay đổi những phần được đánh dấu màu đỏ cho phù hợp.

Tối giản Javascript



Tôi thường hay theo dõi tin từ Javascript Weekly, nơi thường gửi các email thông báo các tin tức về Javascript được cập nhật trong tuần. Chủ yếu xoay quanh các vấn đề: các bài hướng dẫn, các library mới, và 1 số tin tức.Tuần vừa rồi, họ có gửi cho tôi 1 email (các bạn có thể xem phiên bản on webtại đây), trong đó có 1 topic khá thú vị, chính là tiêu đề của post này.



Trước khi vào nội dung chính, xin nhấn mạnh 1 chút là 'tối giản' khác với tối ưu. Thực ra thì có thể hiểu tối giản là 1 dạng tối ưu về kích thước. VD bạn có 1 file JS cỡ 10KB, sau đó bạn làm cách nào đó để nó còn 8KB mà hoàn toàn giữ nguyên chức năng, thì việc làm đó gọi là tối giản. Tối ưu thông thường được hiểu theo nghĩa về hiệu suất, nghĩa là cùng với file JS đó, bạn thực hiện 1 phương pháp nào đó khiến cho nó chạy nhanh hơn 30%, ngốn CPU ít hơn 10% thì đó gọi là tối ưu. Thông thường thì tối ưu không đồng nghĩa với tối giản, nghĩa là có lúc bạn phải chấp nhận kích thước file lớn để cho nó chạy nhanh hơn (như kiểu xe máy với xe đạp). Nhưng đôi khi các biện pháp tối giản cũng có ý nghĩa về mặt tối ưu hiệu suất.

Các phương pháp tối giản mã Javascript

Tôi điểm qua 2 phương pháp chính:
  • Minifying
  • Compression

Minifying

Minify nghĩa là làm cho nó 'mini' đi. Thông thường quá trình minify sẽ loại bỏ các ký tự xuống dòng, tab, khoảng trắng thừa và các comment. Các khoảng trắng có thể nằm giữa các dấu gán (=) hay cuối câu lệnh. Đôi khi nó cũng loại bỏ 1 số dấu chấm phẩy (;) không cần thiết, VD của câu lệnh cuối trong block if then, while, ...


Công cụ để minify nổi tiếng nhất là của Douglas Crockford, 1 guru hàng đầu về JS hiện nay. Tool online ở đây. (đừng quên Google để biết thêm vài tool nữa nhé)


Vì việc minify thường chỉ đơn thuần là việc xóa bỏ các ký tự thừa, nên nếu code javascript không chuẩn thì sẽ bị lỗi. Lỗi phổ biến nhất là do thiếu dấu chấm phẩy cuối câu lệnh (JS chấp nhận điều này, nhưng khi minify sẽ biến 2 câu lệnh thành 1). Để kiểm tra xem mã JS có chuẩn không, cách tốt nhất là dùng JSLint, một công cụ khác cũng của Douglas Crockford (tất nhiên là không phải quy tắc nào của JSLint bạn cũng nên tuân theo).

Về khả năng tối giản của minifying thì có thể nhận thấy rằng nó không được nhiều lắm.


Compression

Compression nghĩa là nén. Ở đây hiểu nén khác với đóng gói có mã hóa (pack). Pack có thể đem lại kích thước nhỏ hơn nén, nhưng hiệu suất sẽ bị thiệt, vì browser cần thời gian để giải mã (unpack). Hiện nay tôi thấy ít người dùng pack, trừ phi muốn bảo vệ code cho người khác khỏi xem, còn phần lớn đều dùng nén.

Các công cụ nén JS và pack JS có khá nhiều (bạn google nhé), nhưng nối tiếng nhất có lẽ là YUI Compressor của Yahoo (tôi thường dùng cái này nên gọi nó là nổi tiếng nhất, bạn có thể phản đối tôi ở comment). Gần đây Google có nhảy vào lĩnh vực này với Google Closure Compiler, và thực tế thì nó tối giản tốt hơn YUI Compressor, nhưng để lát nữa tôi sẽ nói kỹ hơn về Google Closure Compiler.

Khi nén JS, phần công việc đầu tiên mà các công cụ này làm là minify code (nghĩa là bạn hoàn toàn có thể quên các tool minify đi, chỉ cần nén là đủ, cũng như việc bạn đọc đoạn trước là không có ý nghĩa lắm :D). Nhưng không chỉ vậy, nó còn thay đổi tên các biến, function, methods (nhưng vẫn đảm bảo các biến global được giữ nguyên) thành dạng 1-2 chữ cái như function a(){};.

Quá trình đổi tên này tất nhiên phức tạp hơn nhiều, vì nó phải đảm bảo tất cả mọi liên kết đến các lời gọi hàm, biến vẫn phải được bảo toàn và hoạt động tốt; bất kể lời gọi đó từ nội bộ script hay từ 1 script khác.

Ngoài ra, YUI Compressor còn gán các biến, hàm, constant hay dùng vào 1 biến để tham chiếu nhanh, và thực hiện 1 số biện pháp tối giản khác. Slide này sẽ cho phép bạn có cái nhìn tổng quan về YUI Compressor.

Các công cụ nén JS khác cũng làm các công việc tương tự. Vấn đề là cái nào làm tốt hơn thôi. Không như minify, vốn gần như chỉ có 1 cách làm duy nhất, việc nén JS khá đa dạng và phụ thuộc nhiều vào thuật toán nén. Để so sánh phương pháp nào tốt hơn đối với mã JS của bạn, công cụ này sẽ hữu ích.

Một vài kỹ thuật tối giản mã JS

Đọc qua phần trên, bạn có thể nắm được phần nào các kỹ thuật tối giản mã JS (nếu không nắm được, bạn rất nên đọc lại). Tuy vậy, các kỹ thuật ấy thường do các tool tự thực hiện và bạn ít phải bận tâm. Nhưng có những thứ mà tool không làm giúp bạn được, và bạn cần phải tự làm bằng tay.

(Bạn rất không nên thực hiện các công việc tối giản ở trên bằng tay, như việc xóa các ký tự thừa, đổi tên, ... vì nó sẽ làm cho đoạn mã của bạn trở nên khó hiểu, rối rắm và sau 1 thời gian nữa, bạn có thể tự hỏi là ai đã viết ra đoạn mã khó chịu như vậy. Hãy để các công cụ tự động làm việc đó thay bạn)

Bây giờ tôi xin quay trở lại với Javascript Weekly đã nói lúc đầu. Newsletter kỳ này có giới thiệu đến trang web 140byt.es, vốn lấy ý tưởng từ Twitter. Website này (hiện đang trong trứng, chưa chính thức hoạt động) nhằm thu thập các đoạn mã JS cực nhỏ, không quá 140 ký tự (là số ký tự tối đa Twitter hạn chế, cũng là số ký tự tối đa mà bạn nhắn tin SMS) nhằm thực hiện 1 việc gì đó.

Do chưa chính thức hoạt động nên tất nhiên chưa có script nào cho chúng ta chiêm ngưỡng. Thế nhưng những người làm ra site này đã viết khá kỳ công 1 trang wiki hướng dẫn những kỹ thuật phổ biến cho việc tối giản mã JS cho những người chuẩn bị submit. Đây là hướng dẫn tốt nhất mà tôi có về lĩnh vực tối giản mã JS này (nếu bạn có 1 hướng dẫn khác hãy cho tôi biết ở comment).

Để tham khảo các kỹ thuật khác có giá trị, hãy xem thêm phần 'Other resources' ở cuối trang wiki đó nhé.

Google Closure Compiler

Nói thêm 1 chút về Google Closure Compiler. Sở dĩ đặt nó ở đây vì Google Closure Compiler có kết hợp 1 số kỹ thuật tối giản mã JS trong phần này. Bạn có thể chạy công cụ này online tại đây.

Cá nhân tôi nhận thấy Google Closure Compiler cho ra kết quả nhỏ gọn hơn YUI Compressor. Có thể do Google Closure Compiler đã làm luôn cả công việc tối giản chính nội dung đoạn mã JS mà chúng ta phải làm bằng tay. Tuy vậy, khó mà khẳng định được nó hơn YUI ở mọi mặt. Tốt nhất mỗi khi có ý định tối giản mã JS, chúng ta cứ thử cả 2 công cụ, cái nào cho kết quả tốt hơn (kích thước nhỏ hơn) thì ta lấy kết quả đó.

Lưu ý nhỏ là Google cũng có những hướng dẫn của riêng mình về việc viết code JS, rất đáng tham khảo.

Showcase những tiny script

Mặc dù chúng ta chưa được xem các script tại 140by.es, nhưng có 1 trang khác cho phép chúng ta coi các demo bằng javascript chỉ với 1KB. Ở đây có rất nhiều (tôi cũng không biết là bao nhiêu, chưa xem được hết) các demo thú vị như hiệu ứng đồ họa, chơi cờ vua, xếp hình, ... chỉ với 1KB JS! Có cả source code cho bạn xem nữa.

Nếu chưa đã mắt, bạn có thể xem thêm các demo với kích thước file tối đa 10KB tại trang web này.

Kết luận

Bài viết này không nhằm trình bày 1 cách chi tiết hay đưa ra các giải pháp copy & paste hoặc step-by-step guide. Nó chỉ là 1 bài tổng hợp các thứ liên quan đến tối giản JS mà thôi. Nếu bạn thực sự quan tâm tới vấn đề này thì việc đơn giản nhất mà bạn có thể làm là follow các link trong bài viết và ngâm cứu chúng. Không dễ dàng lắm đâu ;) 
Tham khảo: hontap.blogspot.

Thứ Tư, 12 tháng 9, 2012

Recent post cho trang chủ blogger style 2


Hôm nay namkna giới thiệu thêm cho các bạn một mẫu recent post mới để trang trí cho trang chủ của blog. Tiện ích đơn giản, load nhanh và dễ áp dụng. Tiện ích bao gồm một khung bài viết mới nhất tổng quát trên cùng, và các khung bài viết mới nhất cho từng nhãn bên dưới. Blog của bạn sẽ mang phong cách Magazine (báo trí), travel (du lịc) hoặc chuyên nghiệp hơn.


»Một số đặc điểm nổi bật của Recent post hompage Magazine style 2?

- Giao diện đẹp, bắt mắt.
- Khả năng tùy biến cao thông qua CSS và đoạn scipts mở (chưa mã hóa - endcode)
- Sử dụng 1 file javascripts duy nhất cho tất cả các nhãn nhằm hạn chế ảnh hưởng tới tốc độ load của blog khi sử dụng scripts.

Hãy xem demo hoặc ảnh minh họa đẻ thấy rõ hơn nha.:

View demo


» Bước 1: Ẩn bài viết ở trang chủ

-Việc ẩn bài viết ở trang chủ để tiện ích recen post hoạt động độc lập giúp blog của bạn nhìn chuyên nghiệp hơn.
- Để ẩn bài viết ở trang chủ bạn tham khảo bài viết sau:

» Bước 2: Thêm Recent post home page

1- Đăng nhập vào blog
2- CHọn Mẫu (Template)
3- CHọn chỉnh sửa HTML (Edit HTML)
4- THêm đoạn mã bên dưới vào trước thẻ </head>
<script type='text/javascript'>
//<![CDATA[
imgr = new Array();
imgr[0] = "https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhapTGwCR3FWqPw5X_Qgg7A3QpFz-SEAYvxurPMaqiTF0BJ3g6EoxnqhbYLvGh7QllNx-A7ufgiRh_aX-0cYmQA8iScggzZO9xDjx2xUKSD2_KxSUUxOBVj0vRJfe0HDjfwCs5IyMc8loiU/s1600/noimage-namkna-blogspot-com.png";
showRandomImg = true;

aBold = true;

summaryPost = 140;
summaryPost1= 80;
summaryTitle = 35;

numposts = 1;
numposts1 =5;
numposts2 =4;
numposts3 = 6;
numposts4 = 1;
numposts5 = 6;
numposts6 = 10;
numposts7 = 10;
numposts8= 6;



function removeHtmlTag(strx,chop){
var s = strx.split("<");
for(var i=0;i<s.length;i++){
if(s[i].indexOf(">")!=-1){
s[i] = s[i].substring(s[i].indexOf(">")+1,s[i].length);
}
}
s = s.join("");
s = s.substring(0,chop-1);
return s;
}


function showrecentposts1(json) {
j = (showRandomImg) ? Math.floor((imgr.length+1)*Math.random()) : 0;
img = new Array();
if (numposts5 <= json.feed.entry.length) {
maxpost = numposts1;
}
else
{
maxpost=json.feed.entry.length;
}

for (var i = 0; i < maxpost; i++) {
var entry = json.feed.entry[i];
var posttitle = entry.title.$t;
var pcm;
var posturl;
if (i == json.feed.entry.length) break;
for (var k = 0; k < entry.link.length; k++) {
if (entry.link[k].rel == 'alternate') {
posturl = entry.link[k].href;
break;
}
}

for (var k = 0; k < entry.link.length; k++) {
if (entry.link[k].rel == 'replies' && entry.link[k].type == 'text/html') {
pcm = entry.link[k].title.split(" ")[0];
break;
}
}

if ("content" in entry) {
var postcontent = entry.content.$t;}
else
if ("summary" in entry) {
var postcontent = entry.summary.$t;}
else var postcontent = "";

postdate = entry.published.$t;

if(j>imgr.length-1) j=0;
img[i] = imgr[j];

s = postcontent ; a = s.indexOf("<img"); b = s.indexOf("src=\"",a); c = s.indexOf("\"",b+5); d = s.substr(b+5,c-b-5);

if((a!=-1)&&(b!=-1)&&(c!=-1)&&(d!="")) img[i] = d;

//cmtext = (text != 'no') ? '<i><font color="'+acolor+'">('+pcm+' '+text+')</font></i>' : '';


var month = [1,2,3,4,5,6,7,8,9,10,11,12];
var month2 = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];

var day = postdate.split("-")[2].substring(0,2);
var m = postdate.split("-")[1];
var y = postdate.split("-")[0];

for(var u2=0;u2<month.length;u2++){
if(parseInt(m)==month[u2]) {
m = month2[u2] ; break;
}
}

var daystr = day+ ' ' + m + ' ' + y ;
if (i==0) {
var trtd = '<div class="widgetsplitone_left"><a href="'+posturl+'"><img width="278" height="139" class="imagefeatured wp-post-image" src="'+img[i]+'"/></a><div class="clear"></div><h5 class="posttitle"><a href="'+posturl+'">'+posttitle+'</a></h5><div class="contentstyle"><p>'+removeHtmlTag(postcontent,summaryPost)+'(...)</p></div><div class="clear"></div></div><div class="widgetsplitone_right">';
document.write(trtd);
}
if ((i>0)&&(i<maxpost)) {
var trtd = '<a href="'+posturl+'"><img class="imagewidgetthumb wp-post-image" height="40" src="'+img[i]+'" width="60"/></a><div class="featuredPost"><b><a href="'+posturl+'">'+posttitle+'</a></b><div class="borderfix"></div></div>';
document.write(trtd);
}
j++;
}
document.write('</div>');
}

function showrecentposts3(json) {
j = (showRandomImg) ? Math.floor((imgr.length+1)*Math.random()) : 0;
img = new Array();

for (var i = 0; i < 10; i++) {
var entry = json.feed.entry[i];
var posttitle = entry.title.$t;
var pcm;
var posturl;
if (i == json.feed.entry.length) break;
for (var k = 0; k < entry.link.length; k++) {
if (entry.link[k].rel == 'alternate') {
posturl = entry.link[k].href;
break;
}
}

for (var k = 0; k < entry.link.length; k++) {
if (entry.link[k].rel == 'replies' && entry.link[k].type == 'text/html') {
pcm = entry.link[k].title.split(" ")[0];
break;
}
}

if ("content" in entry) {
var postcontent = entry.content.$t;}
else
if ("summary" in entry) {
var postcontent = entry.summary.$t;}
else var postcontent = "";

postdate = entry.published.$t;

if(j>imgr.length-1) j=0;
img[i] = imgr[j];

s = postcontent ; a = s.indexOf("<img"); b = s.indexOf("src=\"",a); c = s.indexOf("\"",b+5); d = s.substr(b+5,c-b-5);

if((a!=-1)&&(b!=-1)&&(c!=-1)&&(d!="")) img[i] = d;

//cmtext = (text != 'no') ? '<i><font color="'+acolor+'">('+pcm+' '+text+')</font></i>' : '';


var month = [1,2,3,4,5,6,7,8,9,10,11,12];
var month2 = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];

var day = postdate.split("-")[2].substring(0,2);
var m = postdate.split("-")[1];
var y = postdate.split("-")[0];

for(var u2=0;u2<month.length;u2++){
if(parseInt(m)==month[u2]) {
m = month2[u2] ; break;
}
}

var daystr = day+ ' ' + m + ' ' + y ;
var trtd = '<li><a href="'+posturl+'">'+posttitle+'</a></li>';
document.write(trtd);


j++;
}

}

function showrecentposts6(json) {
j = (showRandomImg) ? Math.floor((imgr.length+1)*Math.random()) : 0;
img = new Array();

for (var i = 0; i < numposts; i++) {
var entry = json.feed.entry[i];
var posttitle = entry.title.$t;
var pcm;
var posturl;
if (i == json.feed.entry.length) break;
for (var k = 0; k < entry.link.length; k++) {
if (entry.link[k].rel == 'alternate') {
posturl = entry.link[k].href;
break;
}
}

for (var k = 0; k < entry.link.length; k++) {
if (entry.link[k].rel == 'replies' && entry.link[k].type == 'text/html') {
pcm = entry.link[k].title.split(" ")[0];
break;
}
}

if ("content" in entry) {
var postcontent = entry.content.$t;}
else
if ("summary" in entry) {
var postcontent = entry.summary.$t;}
else var postcontent = "";

postdate = entry.published.$t;

if(j>imgr.length-1) j=0;
img[i] = imgr[j];

s = postcontent ; a = s.indexOf("<img"); b = s.indexOf("src=\"",a); c = s.indexOf("\"",b+5); d = s.substr(b+5,c-b-5);

if((a!=-1)&&(b!=-1)&&(c!=-1)&&(d!="")) img[i] = d;

//cmtext = (text != 'no') ? '<i><font color="'+acolor+'">('+pcm+' '+text+')</font></i>' : '';


var month = [1,2,3,4,5,6,7,8,9,10,11,12];
var month2 = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];

var day = postdate.split("-")[2].substring(0,2);
var m = postdate.split("-")[1];
var y = postdate.split("-")[0];

for(var u2=0;u2<month.length;u2++){
if(parseInt(m)==month[u2]) {
m = month2[u2] ; break;
}
}

var daystr = day+ ' ' + m + ' ' + y ;

var trtd = '<a href="'+posturl+'"><img width="266" height="139" class="imagefeatured wp-post-image" src="'+img[i]+'"/></a><div class="clear"></div><h5 class="posttitle"><a href="'+posturl+'">'+posttitle+'</a></h5><div class="contentstyle"><p>'+removeHtmlTag(postcontent,summaryPost)+'(...)</p></div><div class="clear"></div>';
document.write(trtd);

j++;
}

}


//]]>
</script>
5- Thêm đoạn mã bên dưới vào trước thẻ ]]></b:skin>
/* --------Widgets---------------------*/
.widget {
margin: 0px 0px 10px 0px;
overflow: hidden;
}
.widget a,
.widget a:visited {
color: #00CD00;
text-decoration: none;
}
.widget a:hover {
color: #FF7000;
}
.widgetwrap {
padding: 10px;
border-left: 1px solid #F4F4F4;
border-right: 1px solid #F4F4F4;
border-bottom: 1px solid #F4F4F4;
overflow: hidden;
border-bottom-left-radius: 3px;
border-bottom-right-radius: 3px;
}
.widgetwrap ul {
list-style-type: none;
margin: 0px 0px 0px 0px;
padding: 0px 0px 0px 0px;
}
.widgetwrap ul li {
background: transparent url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigJAk8qZjoDikAHzKkfYmQBLvi7w-_QUM1LSuH6aDv2c7pk8SuHQihFMWe4DZQOIlCZhFYO0Gx_Lctzgb4AsGiVKQS991F6U6lYYIjO7-G_QrVzDGtHp34B-b2JKd9uAZZAkEpuXHxnCZR/s1600/bullet-namkna-blogspot-com.gif) no-repeat 0px 5px;
margin: 0px 0px 4px 0px;
padding: 0px 0px 0px 13px;
}
.widgetwrap li a,
.widgetwrap li a:link,
.widgetwrap li a:visited {
color: #000000;
margin: 0px 0px 0px 0px;
padding: 0px 0px 0px 0px;
}
.widgetwrap li a:hover,
.widgetwrap li a:active {
color: #FF7000;
margin: 0px 0px 0px 0px;
padding: 0px 0px 0px 0px;
}
.widgetwrapalt {
padding: 10px;
border: 1px solid #F4F4F4;
overflow: hidden;
border-radius: 3px;
}
.widgetsplitone {
width: 558px;
padding: 0px;
margin: 0px;
overflow: hidden;
}
.widgetsplitone_left {
width: 313px;
padding: 0px;
margin: 0px 10px 0px 0px;
float: left;
}
.widgetsplitone_right {
width: 222px;
padding: 0px;
margin: 0px 0px 0px 10px;
float: right;
}
h3.widget {
line-height: 14px;
font-size: 12px;
font-weight: bold;
font-family: Tahoma;
color: #363636;
letter-spacing: normal;
padding: 5px 11px 5px 11px;
margin: 0px 0px 0px 0px;
display: block;
background: #F5F5F5;
}
h3.widget a,
h3.widget a:visited {
color: #000;
text-decoration: none;
}
h3.widget a:hover {
color: #ccc;
}
.main-w_w_right {
float: left;
margin-top: 0px;
padding: 0;
width: 290px;
}
Trong đó:
  • width: 558px; Là độ rộng của khung recent comment chính
  • width: 313px; là độ rộng của khung bên trái
  • width: 222px; là độ rộng của khung bên phải.
  • 2 số 313px +222px phải nhỏ hơn 558px
  • width: 290px; là độ rộng của 2 khung dưới cùng (Số này phải nhỏ hơn 558px/2)
  • color: #00CD00; là màu chữ tiêu đề khi chưa dê chuột vào.
  • color: #FF7000; là màu chữ tiêu đề khi dê chuột vào.
  • background: #F5F5F5; là màu nền của phần tên nhãn (phần màu xám trong hình minh họa hoặc blog demo).
  • color: #363636; là mãu chữ của tên nhãn.
  • font-size: 12px; là Font chữ tên nhãn.
  • Hãy sử dụng công cụ lấy mã màu của namkna để thay đổi mã màu của bạn nha: Color conveter.
6- Tìm đoạn mã bài viết như bên dưới:
<b:section class='main' id='main' showaddelement='no'>
<b:widget id='Blog1' locked='true' title='Bài đăng trên Blog' type='Blog'/>
</b:section>
- Và dán ngay sau nó đoạn code bên dưới.
<!-- Recent Posts -->
<b:if cond='data:blog.url == data:blog.homepageUrl'>

<div class='widget'><h3 class='widget'>Recent Posts</h3>
<div class='widgetwrap'>
<div class='widgetsplitone'>
<script>
document.write(&quot;&lt;script src=\&quot;/feeds/posts/default?max-results=&quot;+numposts1+&quot;&amp;orderby=published&amp;alt=json-in-script&amp;callback=showrecentposts1\&quot;&gt;&lt;\/script&gt;&quot;);
</script>
</div>
</div>
</div>

<!-- Nhãn 1 -->
<div class='widget'><h3 class='widget'>Mô tả nhãn 1</h3>
<div class='widgetwrap'>
<div class='widgetsplitone'>
<script>
document.write(&quot;&lt;script src=\&quot;/feeds/posts/default/-/Tên nhãn 1?max-results=&quot;+numposts1+&quot;&amp;orderby=published&amp;alt=json-in-script&amp;callback=showrecentposts1\&quot;&gt;&lt;\/script&gt;&quot;);
</script>
</div>
</div>
</div>


<!-- Nhãn 2 -->
<div class='widget'><h3 class='widget'>Mô tả nhãn 2</h3>
<div class='widgetwrap'>
<div class='widgetsplitone'>
<script>
document.write(&quot;&lt;script src=\&quot;/feeds/posts/default/-/Tên nhãn 2?max-results=&quot;+numposts1+&quot;&amp;orderby=published&amp;alt=json-in-script&amp;callback=showrecentposts1\&quot;&gt;&lt;\/script&gt;&quot;);
</script>
</div>
</div>
</div>

<!--Nhãn 3 -->
<div class='widget'><h3 class='widget'>Mô tả nhãn 3</h3>
<div class='widgetwrap'>
<div class='widgetsplitone'>
<script>
document.write(&quot;&lt;script src=\&quot;/feeds/posts/default/-/Tên nhãn 3?max-results=&quot;+numposts1+&quot;&amp;orderby=published&amp;alt=json-in-script&amp;callback=showrecentposts1\&quot;&gt;&lt;\/script&gt;&quot;);
</script>
</div>
</div>
</div>

<!-- Nhãn 4 -->
<div class='widget'><h3 class='widget'>Mô tả nhãn 4</h3>
<div class='widgetwrap'>
<div class='widgetsplitone'>
<script>
document.write(&quot;&lt;script src=\&quot;/feeds/posts/default/-/Tên nhãn 4?max-results=&quot;+numposts1+&quot;&amp;orderby=published&amp;alt=json-in-script&amp;callback=showrecentposts1\&quot;&gt;&lt;\/script&gt;&quot;);
</script>
</div>
</div>
</div>

<!-- Khung them thu cong -->
<div class='main-w_w_right'>
<div class='widget'><h3 class='widget'>Blogger Templates</h3>
<div class='widgetwrap'>
<script>document.write(&quot;&lt;script src=\&quot;http://quangvietmkt.blogspot.com/feeds/posts/default?max-results=&quot;+numposts+&quot;&amp;orderby=published&amp;alt=json-in-script&amp;callback=showrecentposts6\&quot;&gt;&lt;\/script&gt;&quot;);</script>
</div>
</div>
</div>
<div class='main-w_w_right'>
<div class='widget'><h3 class='widget'>Wallpapers</h3>
<div class='widgetwrap'>
<script>document.write(&quot;&lt;script src=\&quot;http://viettin365.com/feeds/posts/default?max-results=&quot;+numposts+&quot;&amp;orderby=published&amp;alt=json-in-script&amp;callback=showrecentposts6\&quot;&gt;&lt;\/script&gt;&quot;);</script>
</div>
</div>
</div>
</b:if>
Trong đó:
  • Thay Mô tả 1,2,3,4 thành mô tả nhãn bạn muốn hiển thị recent post
  • Thay tên nhãn 1,2,3,4 thành tên nhãn bạn muốn hiển thị recent post
  • Thay:  http://viettin365.com/ thành URL blog của bạn. Nếu muốn bỏ 2 ô cuối cùng bạn chỉ việc xóa phần màu xanh.
7- Lưu mẫu lại và xem kết quả nha.

Thứ Ba, 11 tháng 9, 2012

Bảng mã màu thập lục đẹp cho Blogger


Bảng mã màu thập lục này có ưu điểm hơn so với Mã màu tùy biếnở chỗ các bạn không cần phải điều chỉnh gì mà chỉ cần chọn mã màu mà mình ưng ý sau đó dán vào các Code của Blog mà bạn muốn.
Mình có một chuyên mục viết về các thủ thuật Blogspot và Yahoo 360 Plussdo vậy bảng mã màu bên dưới hi vọng có thể đáp ứng ddwuwocj yêu cầu của các bạn. 

Tên màuMàu
Black#000000
Grey0#150517
Grey18#250517
Grey21#2B1B17
Grey23#302217
Grey24#302226
Grey25#342826
Grey26#34282C
Grey27#382D2C
Grey28#3b3131
Grey29#3E3535
Grey30#413839
Grey31#41383C
Grey32#463E3F
Grey34#4A4344
Grey35#4C4646
Grey36#4E4848
Grey37#504A4B
Grey38#544E4F
Grey39#565051
Grey40#595454
Grey41#5C5858
Grey42#5F5A59
Grey43#625D5D
Grey44#646060
Grey45#666362
Grey46#696565
Grey47#6D6968
Grey48#6E6A6B
Grey49#726E6D
Grey50#747170
Grey#736F6E
Slate Grey4#616D7E
Slate Grey#657383
Light Steel Blue4#646D7E
Light Slate Grey#6D7B8D
Cadet Blue4#4C787E
Dark Slate Grey4#4C7D7E
Thistle4#806D7E
Medium Slate Blue#5E5A80
Medium Purple4#4E387E
Midnight Blue#151B54
Dark Slate Blue#2B3856
Dark Slate Grey#25383C
Dim Grey#463E41
Cornflower Blue#151B8D
Royal Blue4#15317E
Slate Blue4#342D7E
Royal Blue#2B60DE
Royal Blue1#306EFF
Royal Blue2#2B65EC
Royal Blue3#2554C7
Deep Sky Blue#3BB9FF
Deep Sky Blue2#38ACEC
Slate Blue#357EC7
Deep Sky Blue3#3090C7
Deep Sky Blue4#25587E
Dodger Blue#1589FF
Dodger Blue2#157DEC
Dodger Blue3#1569C7
Dodger Blue4#153E7E
Steel Blue4#2B547E
Steel Blue#4863A0
Slate Blue2#6960EC
Violet#8D38C9
Medium Purple3#7A5DC7
Medium Purple#8467D7
Medium Purple2#9172EC
Medium Purple1#9E7BFF
Light Steel Blue#728FCE
Steel Blue3#488AC7
Steel Blue2#56A5EC
Steel Blue1#5CB3FF
Sky Blue3#659EC7
Sky Blue4#41627E
Slate Blue#737CA1
Slate Grey3#98AFC7
Violet Red#F6358A
Violet Red2#E4317F
Deep Pink#F52887
Deep Pink2#E4287C
Deep Pink3#C12267
Deep Pink4#7D053F
Medium Violet Red#CA226B
Violet Red3#C12869
Firebrick#800517
Violet Red4#7D0541
Maroon4#7D0552
Maroon#810541
Maroon3#C12283
Maroon2#E3319D
Maroon1#F535AA
Magenta#FF00FF
Magenta1#F433FF
Magenta2#E238EC
Magenta3#C031C7
Medium Orchid#B048B5
Medium Orchid1#D462FF
Medium Orchid2#C45AEC
Medium Orchid3#A74AC7
Medium Orchid4#6A287E
Purple#8E35EF
Purple1#893BFF
Purple2#7F38EC
Purple3#6C2DC7
Purple4#461B7E
Dark Orchid4#571B7E
Dark Orchid#7D1B7E
Dark Violet#842DCE
Dark Orchid3#8B31C7
Dark Orchid2#A23BEC
Dark Orchid1#B041FF
Plum4#7E587E
Pale Violet Red#D16587
Pale Violet Red1#F778A1
Pale Violet Red2#E56E94
Pale Violet Red3#C25A7C
Pale Violet Red4#7E354D
Plum#B93B8F
Plum1#F9B7FF
Plum2#E6A9EC
Plum3#C38EC7
Thistle#D2B9D3
Thistle3#C6AEC7
Lavendar Blush2#EBDDE2
Lavendar Blush3#C8BBBE
Thistle2#E9CFEC
Thistle1#FCDFFF
Lavendar#E3E4FA
Lavendar Blush#FDEEF4
Light Steel Blue1#C6DEFF
Light Blue#ADDFFF
Light Blue1#BDEDFF
Light Cyan#E0FFFF
Slate Grey1#C2DFFF
Slate Grey2#B4CFEC
Light Steel Blue2#B7CEEC
Turquoise1#52F3FF
Cyan#00FFFF
Cyan1#57FEFF
Cyan2#50EBEC
Turquoise2#4EE2EC
Medium Turquoise#48CCCD
Turquoise#43C6DB
Dark Slate Grey1#9AFEFF
Dark Slate Grey2#8EEBEC
Dark Slate Grey3#78C7C7
Cyan3#46C7C7
Turquoise3#43BFC7
Cadet Blue3#77BFC7
Pale Turquoise3#92C7C7
Light Blue2#AFDCEC
Dark Turquoise#3B9C9C
Cyan4#307D7E
Light Sea Green#3EA99F
Light Sky Blue#82CAFA
Light Sky Blue2#A0CFEC
Light Sky Blue3#87AFC7
Sky Blue#82CAFF
Sky Blue2#B0E2FF
Light Sky Blue4#566D7E
Sky Blue#6698FF
Light Slate Blue#736AFF
Light Cyan2#CFECEC
Light Cyan3#AFC7C7
Light Cyan4#717D7D
Light Blue3#95B9C7
Light Blue4#5E767E
Pale Turquoise4#5E7D7E
Dark Sea Green4#617C58
Medium Aquamarine#348781
Medium Sea Green#306754
Sea Green#4E8975
Dark Green#254117
Sea Green4#387C44
Forest Green#4E9258
Medium Forest Green#347235
Spring Green4#347C2C
Dark Olive Green4#667C26
Chartreuse4#437C17
Green4#347C17
Medium Spring Green#348017
Spring Green#4AA02C
Lime Green#41A317
Spring Green#4AA02C
Dark Sea Green#8BB381
Dark Sea Green3#99C68E
Green3#4CC417
Chartreuse3#6CC417
Yellow Green#52D017
Spring Green3#4CC552
Sea Green3#54C571
Spring Green2#57E964
Spring Green1#5EFB6E
Sea Green2#64E986
Sea Green1#6AFB92
Dark Sea Green2#B5EAAA
Dark Sea Green1#C3FDB8
Green#00FF00
Lawn Green#87F717
Green1#5FFB17
Green2#59E817
Chartreuse2#7FE817
Chartreuse#8AFB17
Green Yellow#B1FB17
Dark Olive Green1#CCFB5D
Dark Olive Green2#BCE954
Dark Olive Green3#A0C544
Yellow#FFFF00
Yellow1#FFFC17
Khaki1#FFF380
Khaki2#EDE275
Goldenrod#EDDA74
Gold2#EAC117
Gold1#FDD017
Goldenrod1#FBB917
Goldenrod2#E9AB17
Gold#D4A017
Gold3#C7A317
Goldenrod3#C68E17
Dark Goldenrod#AF7817
Khaki#ADA96E
Khaki3#C9BE62
Khaki4#827839
Dark Goldenrod1#FBB117
Dark Goldenrod2#E8A317
Dark Goldenrod3#C58917
Sienna1#F87431
Sienna2#E66C2C
Dark Orange#F88017
Dark Orange1#F87217
Dark Orange2#E56717
Dark Orange3#C35617
Sienna3#C35817
Sienna#8A4117
Sienna4#7E3517
Indian Red4#7E2217
Dark Orange3#7E3117
Salmon4#7E3817
Dark Goldenrod4#7F5217
Gold4#806517
Goldenrod4#805817
Light Salmon4#7F462C
Chocolate#C85A17
Coral3#C34A2C
Coral2#E55B3C
Coral#F76541
Dark Salmon#E18B6B
Salmon1#F88158
Salmon2#E67451
Salmon3#C36241
Light Salmon3#C47451
Light Salmon2#E78A61
Light Salmon#F9966B
Sandy Brown#EE9A4D
Hot Pink#F660AB
Hot Pink1#F665AB
Hot Pink2#E45E9D
Hot Pink3#C25283
Hot Pink4#7D2252
Light Coral#E77471
Indian Red1#F75D59
Indian Red2#E55451
Indian Red3#C24641
Red#FF0000
Red1#F62217
Red2#E41B17
Firebrick1#F62817
Firebrick2#E42217
Firebrick3#C11B17
Pink#FAAFBE
Rosy Brown1#FBBBB9
Rosy Brown2#E8ADAA
Pink2#E7A1B0
Light Pink#FAAFBA
Light Pink1#F9A7B0
Light Pink2#E799A3
Pink3#C48793
Rosy Brown3#C5908E
Rosy Brown#B38481
Light Pink3#C48189
Rosy Brown4#7F5A58
Light Pink4#7F4E52
Pink4#7F525D
Lavendar Blush4#817679
Light Goldenrod4#817339
Lemon Chiffon4#827B60
Lemon Chiffon3#C9C299
Light Goldenrod3#C8B560
Light Golden2#ECD672
Light Goldenrod#ECD872
Light Goldenrod1#FFE87C
Lemon Chiffon2#ECE5B6
Lemon Chiffon#FFF8C6
Light Goldenrod Yellow#FAF8CC

Chúc các bạn cso một Blog thật đẹp!

Widget#2

Widget#5

Widget#4

primaryBottomSidebar

Footerpages

Trang

Bottom Navi

Được tạo bởi Blogger.

Người theo dõi

TIÊU ĐIỂM