


Ringkasan keserasian silang pelayar bagi kemahiran css dan javascript_javascript
Artikel ini meringkaskan isu keserasian merentas penyemak imbas CSS dan JavaScript dalam bentuk sejumlah besar contoh. Kongsikan dengan semua orang untuk rujukan anda. Ringkasan khusus adalah seperti berikut:
1. Keserasian gaya CSS
1. Penutupan FLOAT (membersihkan apungan)
Apabila halaman web dipaparkan tidak sejajar pada sesetengah penyemak imbas, ia selalunya kerana float digunakan dan bukannya benar-benar tertutup Ini juga salah satu sebab mengapa div tidak dapat menyesuaikan diri dengan ketinggiannya. Jika div induk tidak ditetapkan untuk terapung tetapi div anak ditetapkan untuk terapung, div induk tidak boleh membalut keseluruhan DIV anak Keadaan ini biasanya berlaku apabila DIV induk mengandungi berbilang DIV anak. Penyelesaian:
1) Tetapkan juga apungan kepada DIV induk
2) Tambahkan DIV kosong selepas semua DIV anak (pada masa ini Ext melakukan ini), contohnya:
.parent{width:100px;} .son1{float:left;width:20px;} .son2{float:left;width:80px;} .clear{clear:both;margin:0;parding0;height:0px;font-size:0px;} <div class="parent"> <div class="son1"></div> <div class="son2"></div> <div class="clear"></div> </div>
3) Penutupan apungan sejagat
Tambahkan kod berikut pada CSS Global dan tambahkan class="clearfix" pada div yang perlu ditutup.
<style> /* Clear Fix */ .clearfix:after { content:"."; display:block; height:0; clear:both; visibility:hidden; } .clearfix { display:inline-block; } /* Hide from IE Mac \*/ .clearfix {display:block;} /* End hide from IE Mac */ /* end of clearfix */ </style>
:selepas (objek pseudo), menetapkan kandungan yang berlaku selepas objek, biasanya digunakan bersama dengan kandungan IE tidak menyokong objek pseudo ini dan tidak disokong oleh pelayar IE, jadi ia tidak menjejaskan pelayar IE/WIN. . Ini yang paling menyusahkan.
4) limpahan:auto
Hanya tambahkan limpahan:auto pada CSS DIV induk dan anda sudah selesai. Contoh:
.parent{width:100px;overflow:auto} .son1{float:left;width:20px;} .son2{float:left;width:80px;} <div class="parent"> <div class="son1"></div> <div class="son2"></div> </div>
Prinsipnya ialah sebab elemen persisian tidak dapat dilanjutkan dengan baik ialah limpahan, kerana limpahan tidak dapat dilihat (lihat penjelasan W3C). Sekarang, selagi anda menambah "overflow:auto" pada elemen persisian, masalahnya boleh diselesaikan. Hasilnya ialah kecuali untuk IE, ia benar-benar boleh diselesaikan. Langkah seterusnya ialah menyelesaikan masalah IE Jika anda menambah "_height:1%", masalah itu akan selesai sepenuhnya. Saya mencubanya, dan ia sebenarnya berfungsi di bawah IE tanpa menambah "_height:1%".
2. Pemotongan elipsis
.hh { -o-text-overflow:ellipsis; text-overflow:ellipsis; white-space:nowrap; overflow:hidden; }
Ini akan memotong teks berlebihan secara automatik selepas melebihi panjang, dan berakhir dengan elipsis. Teknologi ialah teknologi yang baik, dan ramai orang suka menggunakannya secara rawak, tetapi sila ambil perhatian bahawa Firefox tidak menyokongnya.
Tambahkan ayat ini pada halaman untuk menjadikan halaman itu serasi dengan IE7
Untuk rujukan! Izinkan saya mengingatkan anda tentang isu terapung yang memerlukan perhatian Beri perhatian kepada menetapkan lebar dan ketinggian DIV. Perhatikan tetapan overflow:hidden; Untuk Firefox, paparan gaya div induk;
3. kursor:tangan dan kursor:penunjuk
Firefox tidak menyokong tangan, tetapi IE menyokong penunjuk
Penyelesaian: Gunakan penunjuk
4. Ketelusan CSS
Beberapa penyemak imbas menyokong ketelusan dalam cara yang berbeza Untuk memastikan kesan ketelusan boleh dipaparkan seperti biasa dalam penyemak imbas arus perdana seperti IE, Firefox, Chrome, Safari, dsb., kami boleh menentukan kelas ketelusan, kerana selagi itu. Saya perlu menulis 3 item, jadi saya tidak perlu menyalinnya setiap kali.
Kod khusus adalah seperti berikut:
.transparent{ filter:alpha(opacity=60); /*支持 IE 浏览器*/ -moz-opacity:0.6; /*支持 FireFox 浏览器*/ opacity:0.6; /*支持 Chrome, Opera, Safari 等浏览器*/ }
lebar dan padding dalam 5.css
Dalam IE7 dan FF, lebar lebar tidak termasuk padding, tetapi dalam Ie6 ia termasuk padding.
2. Serasi dengan JavaScript
1. kanak-kanak dan childNodes
Tingkah laku kanak-kanak, childNodes yang disediakan oleh IE dan childNodes di bawah firefox adalah berbeza. ChildNodes di bawah firefox akan mengira baris baharu dan aksara ruang kosong sebagai nod anak nod induk, manakala childNodes dan anak IE tidak. Contohnya:
Div dengan id dd dilihat menggunakan childNodes di bawah IE. Bilangan nod anak ialah 1, manakala di bawah ff ialah tiga. "n"].
Untuk mensimulasikan atribut kanak-kanak dalam Firefox kita boleh melakukan ini:
if (typeof(HTMLElement) != "undefined" && !window.opera) { HTMLElement.prototype.__defineGetter__("children", function() { for (var a = [], j = 0, n, i = 0; i < this.childNodes.length; i++) { n = this.childNodes[i]; if (n.nodeType == 1) { a[j++] = n; if (n.name) { if (!a[n.name]) a[n.name] = []; a[n.name][a[n.name].length] = n; } if (n.id) a[n.id] = n; } } return a; }); }
2. Kejadian firefox dan iaitu
window.event hanya boleh digunakan di bawah IE, tetapi bukan di bawah Firefox Ini kerana acara Firefox hanya boleh digunakan di tempat kejadian berlaku. Firefox mesti menambah peristiwa daripada sumber untuk lulus parameter. IE mengabaikan parameter ini dan menggunakan window.event untuk membaca acara.
Sebagai contoh, berikut ialah cara untuk mendapatkan kedudukan tetikus di bawah IE:
<button onclick="onClick()" >获得鼠标点击横坐标</button> <script type="text/javascript"> function onclick(){ alert(event.clientX); } </script>
perlu ditukar kepada
<button onclick="onClick(event)">获得OuterHTML</button> <script type="text/javascript"> function onclick(event){ event = event || window.event; alert(event.clientX); } </script>
才能在两种浏览器下使用
3.HTML对象获取问题
FireFox获取方式document.getElementById("idName")
ie使用document.idname或者document.getElementById("idName")
解决办法:统一使用document.getElementById("idName");
4. const问题
在Firefox下,可以使用const关键字或var关键字来定义常量;
IE下,只能使用var关键字来定义常量;
解决方法:统一使用var关键字来定义常量。
5.frame问题
以下面的frame为例:
a)访问frame对象
IE:使用window.frameId或者window.frameName来访问这个frame对象,frameId和frameName可以同名;
Firefox:只能使用window.frameName来访问这个frame对象;
另外,在IE和Firefox中都可以使用window.document.getElementById("frameId")来访问这个frame对象;
b) 切换frame内容
在 IE和Firefox中都可以使用window.document.getElementById("testFrame").src = "xxx.html"或window.frameName.location = "xxx.html"来切换frame的内容;
如果需要将frame中的参数传回父窗口(注意不是opener,而是parent),可以在frame中使用parent来访问父窗口。例如:
parent.document.form1.filename.value="Aqing";
6. body问题
Firefox的body在body标签没有被浏览器完全读入之前就存在;而IE的body则必须在body标签被浏览器完全读入之后才存在;
7. firefox与IE的父元素(parentElement)的区别
IE:obj.parentElement
firefox:obj.parentNode
解决方法:因为firefox与IE都支持DOM,因此全部使用obj.parentNode
8.innerText的问题
innerText在IE中能正常工作,但是innerText在FireFox中却不行,需用textContent;
解决方法:
if (navigator.appName.indexOf("Explorer") > -1) { document.getElementById('element').innerText = "my text"; } else { document.getElementById('element').textContent = "my text"; }
9.AJAX获取XMLHTTP的区别
var xmlhttp; if (window.XMLHttpRequest) { xmlhttp = new XMLHttpRequest(); } elseif (window.ActiveXObject) { // IE的获取方式 xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); }
注意:在IE中,xmlhttp.send(content)方法的content可以为空,而firefox则不能为null,应该用send(""),否则会出现411错误。
希望本文所述对大家WEB程序设计有所帮助。

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Terdapat beberapa cara untuk memasukkan imej dalam bootstrap: masukkan imej secara langsung, menggunakan tag HTML IMG. Dengan komponen imej bootstrap, anda boleh memberikan imej yang responsif dan lebih banyak gaya. Tetapkan saiz imej, gunakan kelas IMG-cecair untuk membuat imej boleh disesuaikan. Tetapkan sempadan, menggunakan kelas IMG-Sempadan. Tetapkan sudut bulat dan gunakan kelas IMG-bulat. Tetapkan bayangan, gunakan kelas bayangan. Saiz semula dan letakkan imej, menggunakan gaya CSS. Menggunakan imej latar belakang, gunakan harta CSS imej latar belakang.

Bagaimana cara menggunakan butang bootstrap? Perkenalkan CSS bootstrap untuk membuat elemen butang dan tambahkan kelas butang bootstrap untuk menambah teks butang

Terdapat dua cara untuk membuat garis perpecahan bootstrap: menggunakan tag, yang mewujudkan garis perpecahan mendatar. Gunakan harta sempadan CSS untuk membuat garis perpecahan gaya tersuai.

Untuk menyesuaikan saiz unsur-unsur dalam bootstrap, anda boleh menggunakan kelas dimensi, yang termasuk: menyesuaikan lebar: .col-, .w-, .mw-adjust ketinggian: .h-, .min-h-, .max-h-

Untuk menubuhkan rangka kerja bootstrap, anda perlu mengikuti langkah -langkah ini: 1. Rujuk fail bootstrap melalui CDN; 2. Muat turun dan tuan rumah fail pada pelayan anda sendiri; 3. Sertakan fail bootstrap di HTML; 4. Menyusun sass/kurang seperti yang diperlukan; 5. Import fail tersuai (pilihan). Setelah persediaan selesai, anda boleh menggunakan sistem grid Bootstrap, komponen, dan gaya untuk membuat laman web dan aplikasi yang responsif.

Jawapan: Anda boleh menggunakan komponen pemetik tarikh bootstrap untuk melihat tarikh di halaman. Langkah -langkah: Memperkenalkan rangka kerja bootstrap. Buat kotak input pemilih Tarikh dalam HTML. Bootstrap secara automatik akan menambah gaya kepada pemilih. Gunakan JavaScript untuk mendapatkan tarikh yang dipilih.

HTML mentakrifkan struktur web, CSS bertanggungjawab untuk gaya dan susun atur, dan JavaScript memberikan interaksi dinamik. Ketiga melaksanakan tugas mereka dalam pembangunan web dan bersama -sama membina laman web yang berwarna -warni.

Untuk mengesahkan tarikh dalam bootstrap, ikuti langkah -langkah ini: memperkenalkan skrip dan gaya yang diperlukan; memulakan komponen pemilih tarikh; Tetapkan atribut data-BV-tarikh untuk membolehkan pengesahan; Konfigurasikan peraturan pengesahan (seperti format tarikh, mesej ralat, dll.); Mengintegrasikan rangka kerja pengesahan bootstrap dan mengesahkan input tarikh secara automatik apabila borang dikemukakan.
