<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Narga &#187; CSS</title>
	<atom:link href="http://www.narga.org/category/coding/css-website-dev/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.narga.org</link>
	<description>Ideas and inspiration in my opinion!</description>
	<lastBuildDate>Wed, 04 Aug 2010 09:47:51 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>7 thủ thuật CSS thường dùng đối với các lỗi cố ý của IE</title>
		<link>http://www.narga.org/top-7-css-hacks-that-we-often-use-to-solve-common-ie-problems/</link>
		<comments>http://www.narga.org/top-7-css-hacks-that-we-often-use-to-solve-common-ie-problems/#comments</comments>
		<pubDate>Mon, 19 Nov 2007 14:03:44 +0000</pubDate>
		<dc:creator>Narga</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Phát triển Web]]></category>

		<guid isPermaLink="false">http://www.narga.net/348/top-7-css-hacks-that-we-often-use-to-solve-common-ie-problems/2007/11/19</guid>
		<description><![CDATA[IE - Internet Explorer là trình duyệt Internet phổ biến nhất do nó được tích hợp chặt chẽ với hệ điều hành Windows, lợi thế đó cho thấy sự ích kỉ và sinh ra sự áp đặt đối với người dùng, đặc biệt là các nhà phát triển.


Related posts:<ol><li><a href='http://www.narga.org/thuat-ngu/' rel='bookmark' title='Permanent Link: Một vài thuật ngữ thường gặp!'>Một vài thuật ngữ thường gặp!</a></li>
<li><a href='http://www.narga.org/firefox-hien-thi-loi-cua-css-trong-javascript-console/' rel='bookmark' title='Permanent Link: Firefox hiển thị lỗi của CSS trong Javascript Console'>Firefox hiển thị lỗi của CSS trong Javascript Console</a></li>
<li><a href='http://www.narga.org/khong-nen-dung-www/' rel='bookmark' title='Permanent Link: Không nên dùng www?'>Không nên dùng www?</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><img src='http://i73.photobucket.com/albums/i240/Mistortin/narga-images/ie7bug.jpg' alt='IE 7 Bugs' class="floatleft" />IE &#8211; Internet Explorer là trình duyệt Internet phổ biến nhất do nó được tích hợp chặt chẽ với hệ điều hành Windows, lợi thế đó cho thấy sự ích kỉ và sinh ra sự áp đặt đối với người dùng, đặc biệt là các nhà phát triển. Có những đoạn mã đúng chuẩn XHTML có thể chạy tốt trên tất cả các trình duyệt đạt chuẩn hiển thị XHTML nhưng chưa hẳn nó sẽ hiển đúng trên IE thậm chí IE còn không thèm trả lại kết quả  <img src='http://www.narga.org/wordpress/wp-includes/images/smilies/14.gif' alt='x-(' class='wp-smiley' /><br />
Dưới đây là 7 thủ thuật CSS thường dùng đối với các<strong> lỗi độc quyền</strong> của ngài IE trong quá trình thiết kế một trang Web.<br />
<span id="more-348"></span></p>
<ol>
<li><strong>Lỗi hiển thị khối</strong>: Sửa lỗi hiển thị cho các phiên bản IE6 về trước khi viền và khoảng cách với nội dung bao gồm cả chiều rộng của đối tượng.
<pre lang="css" line="1"> padding: 4em;
border: 1em solid red;
width: 30em;
width/**/:/**/ 25em;</pre>
</li>
<li><strong>Ghi chú điều kiện</strong>: Những ghi chú này đơn giản là những ghi chú chỉ hiển thị đối với những phiên bản trình duyệt nhất định do từng phiên bản có những lỗi khác nhau.
<pre lang="css" line="1"> <!--[if IE]>Mã CSS<![endif]--></pre>
<p>Đoạn mã trên sẽ hiển thị mã CSS tương ứng trên tất cả các phiên bản trình duyệt IE, nếu bạn chỉ muốn nó được trình duyệt IE v5.01, v5.5 và v6 đọc được thì có thể dùng đoạn mã sau:</p>
<pre lang="css" line="1"> <!--[if lte IE 6]>Mã CSS<![endif]--></pre>
<p>Sau khi thử nghiệm chúng ta nên loai bỏ các đoạn mã đặc biệt trên  để giảm nhẹ file CSS cũng như giảm tải cho các trình duyệt khác, để áp dụng các mã CSS đặc biệt trên cho IE thì chỉ cần thêm đoạn mã sau vào phần header là đạt yêu cầu được nạp trong IE:</p>
<pre lang="css" line="1"> <!--[if lte IE 6]>
<link rel="stylesheet" type="text/css" href="ie_hacks.css" />
<![endif]--></pre>
<p>Một vài kiểu mã điều kiện:</p>
<ul>
<li><strong>IE</strong> &#8211; Bất kỳ phiên bản nào</li>
<li><strong>lt IE version</strong> &#8211; Phiên bản trước version</li>
<li><strong>lte IE version</strong> &#8211; Phiên bản trước hoặc bằng với version</li>
<li><strong>IE version</strong> &#8211; Chỉ với phiên bản version</li>
<li><strong>gte IE version</strong>  &#8211; Phiên bản từ version</li>
<li><strong>gt IE version</strong>  &#8211; Phiên bản mới hơn version</li>
</ul>
</li>
<li><strong>Min-width và Max-width &#8211; Độ rộng lớn tối đa và tối thiểu của một đối tượng</strong>: Tất cả các phiên bản của IE đều <em>giả ngu</em> không hiểu đoạn mã này có ý nghĩa gì, chính vì vậy chúng ta phải tạo một cách khác để nó có thể biết ta đang muốn gì  <img src='http://www.narga.org/wordpress/wp-includes/images/smilies/21.gif' alt=':))' class='wp-smiley' />  dựa trên ví dụ về việc tạo một lớp có id id=&#8221;wrapper&#8221;:<br />
<wrapper>
<div id="nav"></pre>
<p>Kế tiếp với đoạn mã tạo một lới có độ rộng tối thiểu 750px:</p>
<pre lang="css" line="1"> #wrapper{
min-width: 750px;
width:expression(document.body.clientWidth < 750? "750px": "auto" );
}</pre>
<p>Đoạn mã sau có độ rộng tối thiểu 750px và tối đa 1220px:</p>
<pre lang="css" line="1"> #wrapper{
min-width: 750px;
max-width: 1220px;
width:expression(document.body.clientWidth < 750? "750px" : document.body.clientWidth > 1220? "1220px" : "auto");
}</pre>
<p>Một cách khác không dùng đến JS trong CSS:</p>
<pre lang="css" line="1"> selector {
  min-height:500px;
  height:auto !important;
  height:500px;
}</pre>
<p>đoạn mã này cho kết quả như nhau trên các trình duyệt IE6, Mozilla/Firefox/Gecko, Opera 7.x+, Safari1.2; có lẽ là tối ưu nhất chăng  <img src='http://www.narga.org/wordpress/wp-includes/images/smilies/7.gif' alt=':s' class='wp-smiley' />
</li>
<li><strong>Chọn đối tượng</strong>: Tùy từng phiên bản khác nhau của IE mà lỗi chọn đối tượng được sửa theo những cách khác nhau như sau:
<ul>
<li><em>IE 6 trở về trước</em>
<pre lang="css" line="1"> *html {}</pre>
</li>
<li><em>IE 7 trở về trước</em>
<pre lang="css" line="1"> *:first-child+html {} * html {}</pre>
</li>
<li>IE 7
<pre lang="css" line="1"> *:first-child+html {}</pre>
</li>
<li><em>IE 7 và các trình duyệt mới khác</em>
<pre lang="css" line="1"> html>body {}</pre>
</li>
<li><em>Các trình duyệt mới khác trừ IE 7</em>
<pre lang="css" line="1"> html>/**/body {}</pre>
</li>
<li><em>Các phiên bản Opera v9 trở về trước</em>
<pre lang="css" line="1"> html:first-child {}</pre>
</li>
</ul>
</li>
<li>
<p><strong>Hiệu ứng hover</strong></p>
<p>Mã :hover cho phép bạn tạo ra những hiệu ứng đặc biệt đối với các đối tượng được liệt kê dưới dạng bảng như danh sách bài viết trên diễn đàn... Phần lớn các trình duyệt hiểu và hiển thị tốt hiệu ứng này ngoại trừ IE  <img src='http://www.narga.org/wordpress/wp-includes/images/smilies/62.gif' alt=':-l' class='wp-smiley' /> .<br />
Đây là một vấn đề phức tạp, bạn có thể xem <a href="http://www.xs4all.nl/~peterned/csshover.html" class="outlink">bài viết này</a> để biết cách xử lý vấn đề của IE</li>
<li>
<strong>Hiệu ứng trong suốt của định dạng ảnh PNG</strong>:<br />
IE không hỗ trợ hiệu ứng trong suốt của định dạng ảnh PNG đơn giản bời vì định dạng PNG không phải do Microsoft hỗ trợ hay do họ tạo ra  <img src='http://www.narga.org/wordpress/wp-includes/images/smilies/71.gif' alt=';))' class='wp-smiley' />  Điều đó không có nghĩa là chúng ta phải chấp nhận và chuyển qua dùng định dạng GIF có độ phân giải thấp hơn nhiều</p>
<ul>
<li> Sử dụng một đoạn mã HTC và một file .gif trong suốt để xử lý lỗi này, có thể tải ở <a href="http://www.box.net/shared/qah7o6pibp" class="outlink">đây</a></li>
<li>Thêm đoạn mã sau vào file ie.css:
<pre lang="css" line="1"> img.pngfix {
behavior: url(pngHack.htc);
}</pre>
</li>
</ul>
<p><a href="http://komodomedia.com/blog/index.php/2007/11/05/css-png-image-fix-for-ie/" class="outlink">Komodomedia có một giải pháp khác cũng cho kết quả tương tự.</a></li>
<li><strong>Phát hiện trình duyệt để sử dụng CSS tương ứng</strong>: Bằng cách sử dụng PHP để phát hiện trình duyệt dựa trên dịnh danh {<em>browser agent</em>} chúng ta có thể biết được trình duyệt nào đang tải website và đưa ra mã CSS tương ứng, tuy nhiên cách làm này gây lãng phí tài nguyên máy chủ đơn giản vì trang web của bạn được gọi thường xuyên, banwidth tăng liên tục  <img src='http://www.narga.org/wordpress/wp-includes/images/smilies/4.gif' alt=':d' class='wp-smiley' /> </li>
</ol>
<p>Bài viết dựa trên bài <a href="http://www.noupe.com/how-tos/7-css-hacks-you-cannt-live-without.html" class="outlink">Top 7 CSS hacks that we often use to solve common IE Problems</a>. Bạn có thể xem bài viêt gốc để biết thêm.</p>
<div class="redbox">Nội dung bài viết bị copy toàn bộ đưa lên Website <a href="http://tinyurl.com/33dqm4" class="outlink">NanoWings</a>, tớ đã viết một vài comments nhưng đều bị xóa hết,  <img src='http://www.narga.org/wordpress/wp-includes/images/smilies/14.gif' alt='x-(' class='wp-smiley' /> </div>


<p>Related posts:<ol><li><a href='http://www.narga.org/thuat-ngu/' rel='bookmark' title='Permanent Link: Một vài thuật ngữ thường gặp!'>Một vài thuật ngữ thường gặp!</a></li>
<li><a href='http://www.narga.org/firefox-hien-thi-loi-cua-css-trong-javascript-console/' rel='bookmark' title='Permanent Link: Firefox hiển thị lỗi của CSS trong Javascript Console'>Firefox hiển thị lỗi của CSS trong Javascript Console</a></li>
<li><a href='http://www.narga.org/khong-nen-dung-www/' rel='bookmark' title='Permanent Link: Không nên dùng www?'>Không nên dùng www?</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.narga.org/top-7-css-hacks-that-we-often-use-to-solve-common-ie-problems/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
