浏览器Firefox与IE在CSS样式表中的差异
1 针对Firefox ie6 IE7的Css样式
现在大部分都是用!important来hack,对于ie6和firefox测试可以正常显示,但是ie7对!important可以正确解释,会导致页面没按要求显示!找到一个针对IE7不错的hack方式就是使用“*+Html”,现在用IE7浏览一下,应该没有问题了。
现在写一个CSS可以这样:
#1 { color: #333; } /* Moz */
* html #1 { color: #666; } /* IE6 */
*+html #1 { color: #999; } /* IE7 */
那么在firefox下字体颜色显示为#333,IE6下字体颜色显示为#666,IE7下字体颜色显示为#999。
2 css布局中的居中问题
主要的样式定义如下:
body {TEXT-ALIGN: center;}
#center { MARGIN-RIGHT: auto; MARGIN-LEFT: auto; }
说明:
首先在父级元素定义TEXT-ALIGN: center;这个的意思就是在父级元素内的内容居中;对于IE这样设定就已经可以了。
但在mozilla中不能居中。解决办法就是在子元素定义时候设定时再加上“MARGIN-RIGHT: auto;MARGIN-LEFT: auto; ”
需要说明的是,如果你想用这个方法使整个页面要居中,建议不要套在一个DIV里,你可以依次拆出多个div,只要在每个拆出的div里定义MARGIN-RIGHT: auto;MARGIN-LEFT: auto; 就可以了。
3 盒模型不同解释.
#box{
width:600px;
//for ie6.0- w\idth:500px;
//for ff+ie6.0
}
#box{
width:600px!important
//for ff
width:600px;
//for ff+ie6.0
width /**/:500px;
//for ie6.0-
}
4 浮动ie产生的双倍距离
#box{ float:left; width:100px; margin:0 0 0 100px; //这种情况之下IE会产生200px的距离 display:inline; //使浮动忽略}
这里细说一下block,inline两个元素,Block元素的特点是:总是在新行上开始,高度,宽度,行高,边距都可以控制(块元素);Inline元素的特点是:和其他元素在同一行上,...不可控制(内嵌元素);
#box{ display:block; //可以为内嵌元素模拟为块元素 display:inline; //实现同一行排列的的效果 diplay:table;
5 IE与宽度和高度的问题
IE不认得min-这个定义,但实际上它把正常的width和height当作有min的情况来使。这样问题就大了,如果只用宽度和高度,正常的浏览器里这两个值就不会变,如果只用min-width和min-height的话,IE下面根本等于没有设置宽度和高度。比如要设置背景图片,这个宽度是比较重要的。要解决这个问题,可以这样:
#box{ width: 80px; height: 35px;}html>body #box{ width: auto; height: auto; min-width: 80px; min-height: 35px;}
6 页面的最小宽度
min-width是个非常方便的CSS命令,它可以指定元素最小也不能小于某个宽度,这样就能保证排版一直正确。但IE不认得这个,而它实际上把width当做最小宽度来使。为了让这一命令在IE上也能用,可以把一个
然后CSS这样设计:
#container{
min-width: 600px;
width:eXPression(document.body.clientWidth < 600? "600px": "auto" );
}
第一个min-width是正常的;但第2行的width使用了javascript,这只有IE才认得,这也会让你的HTML文档不太正规。它实际上通过Javascript的判断来实现最小宽度。
7 清除浮动
.hackbox{
display:table;
//将对象作为块元素级的表格显示
}
或者
.hackbox{
clear:both;
}
或者加入:after(伪对象),设置在对象后发生的内容,通常和content配合使用,IE不支持此伪对象,非Ie 浏览器支持,所以并不影响到IE/WIN浏览器。这种的最麻烦的
......#box:after{
content: ".";
display: block;
height: 0;
clear: both;
visibility: hidden;
}
8 DIV浮动IE文本产生3象素的bug
左边对象浮动,右边采用外补丁的左边距来定位,右边对象内的文本会离左边有3px的间距.
#box{
float:left;
width:800px;}
#left{
float:left;
width:50%;}
#right{
width:50%;
}
*html #left{
margin-right:-3px;
//这句是关键
}
HTML代码
9 属性选择器(这个不能算是兼容,是隐藏css的一个bug)
p[id]{}div[id]{}
p[id]{}div[id]{}
这个对于IE6.0和IE6.0以下的版本都隐藏,FF和OPera作用
属性选择器和子选择器还是有区别的,子选择器的范围从形式来说缩小了,属性选择器的范围比较大,如p[id]中,所有p标签中有id的都是同样式的.
10 IE捉迷藏的问题
当div应用复杂的时候每个栏中又有一些链接,DIV等这个时候容易发生捉迷藏的问题。
有些内容显示不出来,当鼠标选择这个区域是发现内容确实在页面。
解决办法:对#layout使用line-height属性 或者给#layout使用固定高和宽。页面结构尽量简单。
11 高度不适应
高度不适应是当内层对象的高度发生变化时外层高度不能自动进行调节,特别是当内层对象使用
margin 或paddign 时。例:
p对象中的内容
CSS:
#box {background-color:#eee; }
#box p {margin-top: 20px;margin-bottom: 20px; text-align:center; }
解决方法:在P对象上下各加2个空的div对象CSS代码:.1{height:0px;overflow:hidden;}或者为DIV加上border属性。
更多相关文章请关注PHP中文网(www.php.cn)!

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



Untuk mengalih keluar FirefoxSnap dalam Ubuntu Linux, anda boleh mengikuti langkah berikut: Buka terminal dan log masuk ke sistem Ubuntu anda sebagai pentadbir. Jalankan arahan berikut untuk menyahpasang FirefoxSnap: sudosnapremovefirefox Anda akan digesa untuk kata laluan pentadbir anda. Masukkan kata laluan anda dan tekan Enter untuk mengesahkan. Tunggu pelaksanaan arahan selesai. Setelah selesai, FirefoxSnap akan dialih keluar sepenuhnya. Ambil perhatian bahawa ini akan mengalih keluar versi Firefox yang dipasang melalui pengurus pakej Snap. Jika anda memasang versi Firefox yang lain melalui cara lain (seperti pengurus pakej APT), anda tidak akan terjejas. Pergi melalui langkah-langkah di atas

SpringBoot dan SpringMVC adalah kedua-dua rangka kerja yang biasa digunakan dalam pembangunan Java, tetapi terdapat beberapa perbezaan yang jelas antara mereka. Artikel ini akan meneroka ciri dan penggunaan kedua-dua rangka kerja ini dan membandingkan perbezaannya. Mula-mula, mari belajar tentang SpringBoot. SpringBoot telah dibangunkan oleh pasukan Pivotal untuk memudahkan penciptaan dan penggunaan aplikasi berdasarkan rangka kerja Spring. Ia menyediakan cara yang pantas dan ringan untuk membina bersendirian, boleh dilaksanakan

Dalam era Internet mudah alih, prestasi telefon bimbit sentiasa menjadi salah satu tumpuan pengguna. Sebagai peneraju dalam pasaran cip telefon mudah alih, cip MediaTek dan Qualcomm juga telah menarik perhatian pengguna. Baru-baru ini, MediaTek melancarkan cip Dimensity 8200, manakala Qualcomm mempunyai cip siri Snapdragon wakilnya. Jadi, apakah perbezaan antara kedua-dua cip ini? Artikel ini akan menjalankan analisis perbandingan yang mendalam antara Dimensity 8200 dan Snapdragon. Pertama sekali, dari perspektif teknologi proses, Dimensity 8200 menggunakan teknologi proses 6nm terkini, manakala sebahagian daripada Qualcomm Snapdragon

Pangkalan Data Oracle sentiasa menjadi salah satu peneraju dalam sistem pengurusan pangkalan data peringkat perusahaan, dan versinya yang sentiasa dikemas kini dan berulang juga telah menarik perhatian meluas. Antaranya, versi Oracle11g dan Oracle12c adalah versi yang agak representatif dan mempunyai banyak perbezaan. Artikel ini akan menerangkan beberapa perbezaan penting antara Oracle11g dan Oracle12c, dan melampirkan contoh kod khusus untuk membantu pembaca memperoleh pemahaman yang lebih mendalam tentang perbezaan antara kedua-dua versi. 1. Perbezaan seni bina Oracle1

Cara membuat halaman susun atur slaid menggunakan HTML dan CSS Pengenalan: Susun atur slaid digunakan secara meluas dalam reka bentuk web moden dan sangat menarik dan interaktif apabila memaparkan maklumat atau gambar. Artikel ini akan memperkenalkan cara membuat halaman susun atur slaid menggunakan HTML dan CSS, dan memberikan contoh kod khusus. 1. Struktur susun atur HTML Pertama, kita perlu mencipta struktur susun atur HTML, termasuk bekas slaid dan berbilang item slaid. Kodnya kelihatan seperti ini: <!DOCTYPEhtml&

Mozilla Firefox boleh dinyahpasang; Firefox ialah penyemak imbas pihak ketiga dan boleh dinyahpasang jika ia tidak diperlukan. Kaedah nyahpasang: 1. Dalam menu Mula, klik "Sistem Windwos" - "Panel Kawalan"; 2. Dalam antara muka "Panel Kawalan", klik "Program dan Ciri" 3. Dalam antara muka baharu, cari dan klik dua kali Ikon Pelayar Firefox; 4. Dalam tetingkap pop timbul, klik "Seterusnya" 5. Klik "Nyahpasang".

Kawalan Versi: Kawalan versi asas ialah amalan pembangunan perisian yang membolehkan pasukan menjejaki perubahan dalam pangkalan kod. Ia menyediakan repositori pusat yang mengandungi semua versi sejarah fail projek. Ini membolehkan pembangun dengan mudah melancarkan semula pepijat, melihat perbezaan antara versi dan menyelaraskan perubahan serentak pada asas kod. Git: Sistem Kawalan Versi Teragih Git ialah sistem kawalan versi teragih (DVCS), yang bermaksud bahawa setiap komputer pembangun mempunyai salinan lengkap keseluruhan pangkalan kod. Ini menghapuskan pergantungan pada pelayan pusat dan meningkatkan fleksibiliti dan kerjasama pasukan. Git membenarkan pembangun membuat dan mengurus cawangan, menjejaki sejarah pangkalan kod dan berkongsi perubahan dengan pembangun lain. Kawalan Git lwn Versi: Perbezaan Utama Diedarkan lwn Set

Cara menggunakan:nth-child(-n+5) pemilih kelas pseudo untuk memilih gaya CSS elemen anak yang kedudukannya kurang daripada atau sama dengan 5. Dalam CSS, pemilih kelas pseudo ialah alat berkuasa yang boleh dipilih melalui kaedah pemilihan tertentu Elemen tertentu dalam dokumen HTML. Antaranya, :nth-child() ialah pemilih kelas pseudo yang biasa digunakan yang boleh memilih elemen anak pada kedudukan tertentu. :nth-child(n) boleh memadankan elemen anak ke-nth dalam HTML dan :nth-child(-n) boleh memadankan
