`

div+css 兼容词典

 
阅读更多

关于div+css兼容IE和firefox的问题

好不容易建立的div+css网页完全符合W3C标准。在ie7下显示非常完美,用firefox一测试,乖乖一探糊涂

惨不忍睹。经过一番研究发现兼容很

简单。

1、增加   div {overflow: hidden;},目的就是让div自动适应内容高度
2、横排的div外套div

另外设定
ul {
    margin: 0px;
    padding: 0px;
}
是消除li前面的空格


div+css兼容性问题

CSS 兼容要点:DOCTYPE 影响 CSS 处理

FF: div 设置 margin-left, margin-right 为 auto 时已经居中, IE 不行

FF: body 设置 text-align 时, div 需要设置 margin: auto(主要是 margin-left,margin-right) 方可

居中

FF: 设置 padding 后, div 会增加 height 和 width, 但 IE 不会, 故需要用 !important 多设一个

height 和 width

FF: 支持 !important, IE 则忽略, 可用 !important 为 FF 特别设置样式

div 的垂直居中问题: vertical-align:middle; 将行距增加到和整个DIV一样高 line-height:200px; 然

后插入文字,就垂直居中了。缺点是

要控制内容不要换行

cursor: pointer 可以同时在 IE FF 中显示游标手指状, hand 仅 IE 可以

FF: 链接加边框和背景色,需设置 display: block, 同时设置 float: left 保证不换行。参照

menubar, 给 a 和 menubar 设置高度是为了

避免底边显示错位, 若不设 height, 可以在 menubar 中插入一个空格XHTML+CSS兼容性解决方案小集

使用XHTML+CSS构架好处不少,但也确实存在一些问题,不论是因为使用不熟练还是思路不清晰,我就先

把一些我遇到的问题写在下面。

1.在mozilla firefox和IE中的BOX模型解释不一致导致相差2px解决方法:

div css xhtml xml Example Source Code Example Source Code [www.52css.com]
div{margin:30px!important;margin:28px;}

注意这两个margin的顺序一定不能写反,据阿捷的说法!important这个属性IE不能识别,但别的浏览器可

以识别。所以在IE下其实解释成这样

div css xhtml xml Example Source Code Example Source Code [www.52css.com]
div{maring:30px;margin:28px}

重复定义的话按照最后一个来执行,所以不可以只写margin:XXpx!important;

2.IE5 和IE6的BOX解释不一致IE5下div{width:300px;margin:0 10px 0 10px;}div的宽度会被解释为

300px- 10px(右填充)-10px(左填充)最终

div的宽度为280px,而在IE6和其他浏览器上宽度则 是以300px+10px(右填充)+10px (左填充)=320px来计

算的。这时我们可以做如下修改:

div css xhtml xml Example Source Code Example Source Code [www.52css.com]
div{width:300px!important;width :340px;margin:0 10px 0 10px}

关于这个是什么我也不太明白,只知道IE5和firefox都支持但IE6不支持,如果有人理解的话,请告

诉我一声,谢了!:)

3.ul标签在Mozilla中默认是有padding值的,而在IE中只有margin有值所以先定义

div css xhtml xml Example Source Code Example Source Code [www.52css.com]
ul{margin:0;padding:0;}

就能解决大部分问题

4.关于脚本,在xhtml1.1中不支持language属性,只需要把代码改为

div css xhtml xml Example Source Code Example Source Code [www.52css.com]
<script type="text/javascript">


div+css兼容问题解决方案(IE5/5.5/6/7/FF)

之前找了几个不同版本的可独立运行的IE浏览器,正好拿来试试页面的兼容性问题。不试不知道,在IE6

和FF中没问题的页面在IE5和IE5.5中乱

成一团,一直听说IE5是WEB标准制作的一个“钉子户”,现在不得不相信了。

既然有问题,那就找找解决的方法咯,在网上一搜,相关的文章还是不少的,觉得最直接的方法还是“IE

条件注释”,很方便的就能为IE的不

同版本写样式。但这样就得为每个版本写一个样式,不利于文件的优化。

找了一些相关的CSS HACK后,觉得应该可以把IE5/IE5.5/IE6/FF的HACK写到一起的,经过测试,终于找到

了一个不错的方法,下面我们来看看

怎么实现:

大家都知道用!important声明可以提升指定样式规则的应用优先权,如下面的例子:

E1{

background-color: red !important;

background-color: blue;

}

但这样写在IE中会有个问题,看过我的《关于CSS样式表优先级》和《关于CSS样式表优先级补遗》,你会

知道在IE6和FF中用! important声明

可以提高优先级别,但在IE6中的!important声明并不是绝对的,它会被之后的同名属性定义所替换。也

就是说在上面的例子中,IE6所应用的

是最后一个背景色的值,即“blue”;而在FF中背景色的值为“red”。根据这一点,我们就可以把FF和

IE的样式分离开。

OK ,解决了FF和IE的问题,现在来解决IE自己的问题。

看过了嘟嘟的《绕过IE6支持IE5的别一种写法-IE也支持"&gt;"》后有感而发,使用“>”IE是否真的可

以认得?我们来看个例子:

E1{

background-color: red;

>background-color: blue;

}

在FF中得到的是背景色红色,而在IE中得到的背景色是蓝色,根据样式重定义的规则,如果浏览器可以识

别“>”,则应该得到的蓝色的背景

,因此可以知道“>”只有IE可以识别,这点是很重要的哦!在后面大家就会知道了。(注:我测试过其

它的一些符号,如“~”、“`”、“

<”等,都只有IE可以识别,在此为了感谢嘟嘟,推荐使用“>”)

我们再来看个例子:

E1{

>background-color: black;

>background-color : green;

}

这个例子在IE6中得到了黑色的背景;而在IE5.5中得到的绿色的背景;在IE5中也得到了黑色的背景。这

就说明了第二句定义只有IE5.5能识别

,这是个很早就公布的HACK,可以在网上找到相关的资料,要注意的就是在属性名之后是有一个空格的。

到此我们已经把FF、IE5.5、IE6分离

出来了,那IE5呢?其实现在我们只要把IE5跟IE6分开就OK了,来看看例子:

E1{

>background-color: red;

}

E1{

>background-color: black;

}

这里我们又用到一个HACK,就是“E1{}”,这个定义在IE5以上的版本才能识别出来。这个例子得到

的结果是,在IE5中的背景色为红色;

在IE5以上版本中得到的是黑色背景。

终于把不同版本的浏览器都分离出来了,这样我们就可以为不同的浏览器定义不同的样式了。来看个完整

的例子:

E1{

width: 500px;

height: 50px;

background-color: red !important;

background-color: blue;

text-align:center;

}

E1{

>background-color: black;

>background-color : green;

}

需要注意的是,在上面例子中“background-color”定义的顺利不能改变,即FF-IE5-IE6-IE5.5。对于IE

的定义在属性前要加“>”,因为

“E1{}”这个HACK在FF中可以识别。也许你会想,上面的例子不是可以写成:

E1{

width: 500px;

height: 50px;

background-color: red;

>background-color: blue;

text-align:center;

}

E1{

>background-color: black;

>background-color : green;

}

这样不就又可以省下几个字节?是没错,可是HACK不是标准,如果滥用HACK,那只会离标准越来越远!


div+css实现Firefox和IE6兼容的垂直居中

Firefox中使用display: table-cell; vertical-align: middle;可以实现div垂直居中,而IE6中则需要

借助IE6中css的特点实现垂直居中。为

了实现Firefox和IE6兼容的垂直居中,还需要借助于!important标记。Firefox支持!important标记,而

IE6忽略!important标记,因此可以使

用! important标记区别Firefox和IE6。

[示例代码]
<html>
   <body>
       <div style="display: table-cell; vertical-align: middle; height: 200px; border: 1px

solid red;">
           <p>垂直居中,Firefox only</p>
           <p>垂直居中,Firefox only</p>
           <p>垂直居中,Firefox only</p>
       </div>
       <div style="border: 1px solid red; height: 200px; position: relative;">
            <div style="position: absolute; top: 50%;">
                <div style="position: relative; top: -50%;">
                    <p>垂直居中,IE6 only</p>
                    <p>垂直居中,IE6 only</p>
                    <p>垂直居中,IE6 only</p>
                </div>
            </div>
       </div>
       <div style="border: 1px solid red; height: 200px; position: relative; display:

table-cell; vertical-align: middle;">
            <div style="position: static !important; position: absolute; top: 50%;">
                <div style="position: relative; top: -50%;">
                    <p>垂直居中,Firefox IE6 only</p>
                    <p>垂直居中,Firefox IE6 only</p>
                    <p>垂直居中,Firefox IE6 only</p>
                </div>
            </div>
       </div>
   </body>
</html>


div+css的浏览器兼容问题
水平居中,Firefox使用margin-left: auto; margin-right: auto; IE6 使用text-align: center;
垂直居中,Firefox中使用display: table-cell; vertical-align: middle;可以实现div垂直居中,而

IE6中则需要借助IE6中css的特点实现垂

直居中。
!important标记,Firefox支持!important标记,IE6忽略!important标记

分享到:
评论

相关推荐

    div+css百分比表格+DIV+CSS+JS静态分页程序+DIV+CSS像素表格

    DIV+CSS+JS静态分页程序可兼容主流浏览器(IE、FF、Opera) DIV+CSS表格(用DIV+CSS做的表格像素表格) 内容不多但是绝对实用,其实在做数据显示时还是推荐用表格,因为不是所有的地方数据显示有用DIV+CSS,在数据...

    div+css例子 div+css例子

    div+css例子div+css例子div+css例子div+css例子div+css例子div+css例子div+css例子div+css例子div+css例子div+css例子div+css例子div+css例子div+css例子div+css例子div+css例子div+css例子div+css例子div+css例子...

    经典DIV+CSS模板 经典DIV+CSS模板

    描述中的关键词如"div+css"、"web标准"、"div+css布局"、"div+css实例"、"div+css模板"揭示了这些模板遵循Web开发的最佳实践,旨在实现结构与表现的分离,提高网页的可维护性和可访问性。Web标准通常指的是W3C制定的...

    Table转div+css工具

    首先,我们要理解Table和Div+CSS的区别。Table是一种早期的网页布局方式,它主要用于数据展示,但在复杂的网页设计中,表格布局可能导致页面加载速度慢,且不易于调整和扩展。相比之下,Div是HTML中的一个通用容器...

    简单设计DIV+CSS模板

    《深入理解:基于Div+CSS的网页设计与布局》 Div+CSS是现代网页设计中的核心技术,它在构建Web标准的网页布局中扮演着至关重要的角色。本篇将围绕"简单设计Div+CSS模板"这一主题,深入探讨Div+CSS的基础概念、网页...

    DIV+CSS网页制作对搜索引擎优化的优势分析整理.pdf

    DIV+CSS网页制作对搜索引擎优化的优势分析整理 DIV+CSS网页制作技术的优势在于其符合W3C国际标准,能够将表现与内容分离,提高搜索引擎对网页的索引效率,提高页面浏览速度,易于维护和改版。同时,DIV+CSS网页...

    table布局网页转换为div+CSS布局的转换软件

    `div+CSS`布局则通过分离结构和样式,提高了代码的可读性和可维护性,同时也为创建灵活的、响应式的网页提供了可能。 `table`到`div+CSS`的转换软件就是针对这种情况应运而生的工具。这种软件能够自动将基于`table`...

    div+CSS购物网站模板

    在这个专题中,我们将深入探讨Div+CSS在购物网站模板中的应用,以及它对于网页设计的重要性。 首先,让我们了解什么是Div和CSS。Div(Division)是HTML中的一个布局容器,它允许我们将页面划分为多个独立的区域,...

    html+div+css+js学习.zip

    html+div+css+js学习html+div+css+js学习html+div+css+js学习 html+div+css+js学习html+div+css+js学习html+div+css+js学习 html+div+css+js学习html+div+css+js学习html+div+css+js学习 html+div+css+js学习...

    div+css手册

    《div+css手册》是一本深入探讨网页布局技术的重要参考资料,尤其对于网页设计者和前端开发者来说,它具有极高的学习价值。这个手册的核心聚焦在HTML中的`div`元素和CSS(层叠样式表)的结合使用上,旨在帮助读者...

    两天驾驭DIV+CSS.pdf

    基础篇 1.1 必须知道的基础知识 知识一 DIV+CSS的叫法是不准确的 标准叫法是xHTML+CSS 知识二两大误区 误区一用了Table就不标准。误区二DIV标签越多越好 Table是为了存储数据DIV是为了架设...

    div+css布局大全

    下面,我们将深入探讨div+css布局的相关知识点。 1. **Div元素**:HTML中的`&lt;div&gt;`(division)元素是一个通用容器,用于组合HTML元素,为页面提供结构。通过设置`&lt;div&gt;`的类或ID属性,我们可以对多个元素进行分组...

    DIV+CSS简单登录界面模板

    在网页设计领域,`DIV+CSS`是一种广泛使用的布局技术,它通过定义不同的`Div`(Division,分块)元素并应用相应的`CSS`(Cascading Style Sheets,层叠样式表)样式来构建页面结构和外观。标题提到的“DIV+CSS简单...

    DIV+CSS网站布局从入门到精通源代码

    DIV+CSS网站布局从入门到精通 源代码 朱印宏 邓艳超 编著 北京希望电子出版社 2011年1月 本教程介绍了商业类型的网页设计,以及目前流行的DIV+CSS标准布局方法和实战技法。通过对十个经典案例进行分析,分别从不同...

    整站模板DIV+CSS 源码DIV+CSS 

    【描述】"DIV+CSS 源码"进一步强调了这个主题,意味着我们将深入到实际的代码层面,了解如何通过Div元素配合CSS实现网页的布局、样式控制以及功能实现。Div常用于定义网页上的不同区域,而CSS则用于定义这些区域的...

    div+css布局制作箭头步骤流程样式 - div+css教程

    在网页设计领域,`div+css`是一种常用的技术,用于实现页面布局和样式控制。`div`元素作为容器,能够包裹其他HTML元素,而CSS(层叠样式表)则负责定义这些元素的外观和位置。在本教程中,我们将深入探讨如何使用`...

    div+css兼容性

    用一行代码来解决CSS在,IE6,IE7,IE8,IE9,IE10 中的各种兼容性问题。在网站前端写代码的过程中,很多时间IE各个版本的兼容问题很难整。

    纯div+css轮播图片切换图片

    在网页设计中,纯div+css实现的图片轮播是一种常见的动态效果,它能为网站增添生动性,吸引用户注意力。下面将详细讲解这个主题,包括如何使用div和css创建图片切换、电子相册以及轮播图片的效果。 一、图片切换 ...

    div+css常见兼容性问题

    在网页设计中,`div+css`是一种常见的布局方式,但它也伴随着一系列的浏览器兼容性问题。这些问题主要出现在不同浏览器对CSS规范的解读和实现上存在差异,尤其是老版本的Internet Explorer(如IE6和IE7)与其他...

    七套最新div+css中文html模板免费下载

    现在网上到处都是div+css模板,但是真正能用的到底有几个?你自己说! 无非是一些英文版的,但是国外的模板理念和国内的很不一样,英文的讲究框架合理,韩国的讲究视觉美,国内的刚好是二者的综合体。 现在模板界有...

Global site tag (gtag.js) - Google Analytics