2008 8 Januari 2008

Bersyarat Komentar: Untuk Hanya-Bagian Duex IES Anda

Beberapa bulan sebelumnya kami melihat, bagaimana kita bisa termasuk bagian dari CSS yang akan terlihat ke IE6 saja ( Untuk Anda Hanya IES ). Ada cara lain untuk mencapai hal ini juga. Cukup menyertakan CSS terpisah, khusus untuk IE target Anda. ini dapat dicapai dengan apa yang disebut sebagai Komentar Bersyarat.

Komentar Bersyarat adalah cara untuk mendeteksi jenis browser dan versi. Browser deteksi dilakukan untuk memastikan bahwa konten disampaikan kepada spesifik browser. Deteksi browser dapat dilakukan dengan menggunakan teknik yang berbeda. Metode ini memiliki beberapa keunggulan dibandingkan metode sebelumnya, yang mencakup gaya beralih menggunakan javascript. Untuk daftar beberapa penting, akan menjadi;

  • Scripting tidak diperlukan
  • Lintas-browser

Bagaimana kita melakukan ini?

Lakukan sesuatu di IE 5 hanya
<!--[if IE 5]> Welcome to Internet Explorer 5. <![endif]-->

Lakukan sesuatu di Semua versi IE
<!--[if IE]>
<link href="css/ie.css" rel="Stylesheet" type="text/css" />
<![endif]-->

Lakukan sesuatu di Semua versi IE yang lebih baru bahwa IE 5
<!--[if gte IE 5]>
<script type="text/javascript"><!--
alert("Congratulations! You are running Internet Explorer 5 or greater.");<br />
// --></script>
<![endif]-->

Untuk vartiations bersyarat lebih lanjut, baca info ini di MSDN:
Tentang Komentar Bersyarat


2007 9 September 2007

IE 6 location.href Masalah

Pernahkah Anda memperhatikan kadang-kadang, bagaimana hal-hal sederhana hanya menolak untuk bekerja di IE6 ... location.href hanya hal seperti itu.

Jika Anda telah menambahkan fungsi onclick untuk tag anchor Anda seperti di bawah ini ...

<a href="javascript:void(0);" onclick="onClickLink('xxx');"> pergi ke lokasi baru </ a>

Dengan beberapa fungsi seperti ini ...
fungsi onclickLink (id) {
var URI = "test2.html id =?" + id;
window.location.href = URI;
}

Untuk ironi Anda, Anda akan melihat bahwa suatu bagian dari script sederhana menolak untuk bekerja di IE ... Nah! Saya dapat mendiskusikan alasan di sini, tapi tidak berpikir itu akan bermanfaat ... Meskipun, saya tampaknya memiliki solusi ... (Saya yakin jika Anda memahami Javascript, Anda akan memahami, mengapa kita menambahkan tweak ini untuk IE6)

Solusi

<a href="javascript:void(0);" onclick="onClickLink('xxx'); kembali false; "> pergi ke lokasi baru </ a>

Jika Anda jawaban sederhana, silahkan lakukan menulis komentar. Itu benar-benar akan appretiated, saya yakin, dengan Banyak!


2007 8 September 2007

Untuk Anda Hanya IES

Jika Anda telah menulis CSS untuk sementara, Anda harus mengalami saat-saat ketika Anda benar-benar menarik rambut Anda ketika Anda CSS layout tampak baik-baik di semua browser baru (maksudku browser lambat IE6), tapi IE 6 marah-marah. Anda berjuang keras untuk menyesuaikan CSS Anda tetapi tidak bekerja ... Nah! Cobalah hacks ini ...

1. Menggarisbawahi Hack: -
Menurut definisi, CSS 2.1 spesifikasi memungkinkan underscore ("_") dalam pengidentifikasi CSS. Tapi banyak browser tampaknya masih mengabaikan mengidentifikasi melanjutkan dengan menggarisbawahi tapi IE. Bug ini IE / fitur demikian menjadi cara yang sangat jelas untuk mengatur properti CSS untuk IES saja. jadi ingat, Sebuah properti CSS ditulis dengan garis bawah pada awal terlihat untuk Internet Explorer (semua versi tapi IE 7)

#box {
min-height: 300px;
height: auto;
_height: 300px; /* all IE versions less than version 7 */
...
}

Lihat demonstrasi ini menggarisbawahi hack

Juga, Hack min-height untuk IE6 hack menggunakan underscore, memeriksa


2. Hash (#) Hack: -
Seperti underscore hack, yang satu ini juga adalah untuk IES oly, dengan perbedaan baik, properti pengidentifikasi didahului dengan # pada awal terlihat untuk Semua versi IE, IE7 termasuk dan tidak terlihat untuk setiap browser standar lainnya.

.obj_container {
display: table-cell;
vertical-align: middle;
#position: absolute; /* For IE only */
#top: 50%; /* For IE only */
#left:50%; /* For IE only */
}

Hack ini telah digunakan baik untuk menunjukkan cross browser vertikal menyelaraskan solusi, kita lihat di artikel ini untuk mengetahui lebih kami


3. CSS untuk IE6 saja: -
#my_bad_behaving_div {
/*something for all browsers*/
}
/* Lets use the * html hack so only IE6 reads the rule */
* html #my_bad_behaving_div{
/*something for IE6 only*/
}

Hacks ini tampaknya surga dikirim, bila tidak ada lagi bekerja ... Jika salah satu hacks menghemat hidup Anda suatu hari nanti, jangan lupa untuk memperlakukan saya ke kopi :)


NDK rumah | Mengekspresikan TI | Langit-langit Mulut Mengekspresikan | Penmenship Mengekspresikan | Awe Mengekspresikan | Mengekspresikan Diriku