html兼容性2

于IE6下,不能识别我们的h5标签,解决办法

  • 主动使用js创建header,footer等标签。--存在的问题,这种方法创建的元素,对于IE6来说,相当于自定义标签,而自定义标签属于 默认属于行内元素 ,所以,我们要在css样式里面给对应的标签加上display:block;
  • 还有一个js插件,它主动的帮我们做完了那种h5标签初始化的操作,所以完全不用担心标签兼容性问题,你只需要引入到页面就可以 html5shiv.js

块级元素和内联元素的嵌套规则:

  • p、h1-h6、td、caption、dt这些标签只能放 __内联元素__--坚决不要放块级元素> * 块级元素与块级元素并列、内嵌元素与内嵌元素并列
  • 在HTML里有几个元素是比较特别的:
  • ul、ol、dl、table,它们的子一层必须是指定元素,ul、ol的子一级必须是li;
  • dl的子一级必须是dt或者dd;
  • table的子一层必须是caption>或thead、tfoot、tbody等,而再子一层必须是tr (tr只存在于thead、tfoot、tbody中),之后才是可放内容的td或者th。  
    • a标签不能包含其他a标签
    • pre标签不能包含img,object,big,samll,sub和sup标签
    • button标签不能包 含input,select,textarea,label,button,form,fieldset,iframe 和isindex标签
    • label标签不能包含其他label标签
    • form标签不能包含其他form标签

magin兼容性问题

当我们按照下面的写法,会存在的问题:

存在的问题的截图:

<div class="box">
    <div class="item"></div>
    <div class="item"></div>
</div>

对应的css

.box{
    background-color: green;

}
.item{
    height: 50px;
    background-color: red;
    margin: 50px;
}
  1. margin-top传递--解决办法:触发BFC、haslayout
  2. 上下margin叠压--坍塌--解决办法:尽量使用同一方向的margin,比如都设置top或者bottom

  如下面的代码:

解决后的截图:

display:inline-block;在IE7及以下无效

代码:

在chrome下的样子

对,这是我们想要的效果。IE7以下,都还是竖着排列,因为div是块级元素

IE7以下的效果:

inline-block它是css2.1的标准,不兼容IE7以下。

解决办法:加hack以及触发haslayout

IE以下还把元素之间的空隙去掉了。IE8及以上还有chrome还是有间隙的。

IE6最小高度问题(它是19px):加*overflow:hidden;

就正常了。

IE6双边距问题:当元素浮动后,再给元素设置margin,就会产生双倍边距。比如:你设置的margin:50px;当加浮动后,在IE6下量,会发现margin的距离变为100px

代码:

css:

什么是BFC模型

有哪些方法可以触发BFC模型

什么是haslayout?

有哪些方法可以触发haslayout?

时间: 2024-10-24 20:31:54

html兼容性2的相关文章

html常见兼容性问题

html常见兼容性问题? 1.双边距BUG float引起的  使用display 2.3像素问题 使用float引起的 使用dislpay:inline -3px 3.超链接hover 点击后失效  使用正确的书写顺序 link visited hover active 4.IE z-index问题 给父级添加position:relative 5.Png 透明 使用js代码 改 6.Min-height 最小高度 !Important 解决' 7.select 在ie6下遮盖 使用ifram

win8下安装VC6出现兼容性问题的解决办法

重装系统之后(win8的系统),发现VC6安装出现兼容性问题,花了一些时间解决,有出现的问题都差不多在下面链接的总结中,写的很详细: http://www.docin.com/p-1126120829.html 这里面安装补丁的过程还会出现以下问题: "模块FileTool.dll已加载,但对DLLRegisterServer调用失败" 解决办法就是: 在cmd下手动注册该dll文件:regsvr32 "C:\Program Files\Microsoft Visual St

常见浏览器兼容性问题与解决方案【转】

常见浏览器兼容性问题与解决方案 原文:http://blog.csdn.net/chuyuqing/article/details/37561313/ 所谓的浏览器兼容性问题,是指因为不同的浏览器对同一段代码有不同的解析,造成页面显示效果不统一的情况.在大多数情况下,我们的需求是,无论用户用什么浏览器来查看我们的网站或者登陆我们的系统,都应该是统一的显示效果.所以浏览器的兼容性问题是前端开发人员经常会碰到和必须要解决的问题. 在学习浏览器兼容性之前,我想把前端开发人员划分为两类: 第一类是精确按

Atitit.软件架构高扩展性and兼容性原理与概论实践attilax总结

1. 什么是可扩展的应用程序?1 2. 松耦合(ioc)2 3. 接口的思考 2 4. 单一用途&模块化,小粒度化2 5. 组合(Composition),而不是继承(inheritance) 2 6. Ocp原则开闭原则2 7. Plugin系统2 8. 流程扩展工作流系统,流程自定义2 9. Ui扩展 html53 10. 数据独立性3 11. 脚本与hotdeploy3 12. 表处理扩展if else (数据与数据处理相互分离)3 13. 系统被扩展的几种形式(方法级别,模块级别)3 1

HTML5新增的语义标签和IE版本低的兼容性问题

<!DOCTYPE html><html> <head> <!-- HTML5中浏览器兼容(较低版本的IE浏览器不支持H5的布局):需要在<head>中加入 <!-[if lt IE9]><script src="html5.js"></script><![endif]->(html5.js是外部引入文件), 在head中的<style></style>中加入s

SharePoint 2013 日历视图兼容性问题

在IE11上访问SharePoint 2013 calendar视图,发现加入兼容性视图以后访问,正常,如下图: 不加入兼容性视图IE11访问,出现兼容性问题,如下图: 因为有些环境有问题,有些环境没有问题,对比了一下,发现打补丁kb3054792,打完补丁,重启即可: 补丁地址:http://www.microsoft.com/zh-cn/download/details.aspx?id=47055 特别的,在解决这个问题之前的疯狂谷歌过程中,发现也有类似情况,要么加入兼容性视图,要么开启浏览

关于css伪类的一些兼容性测试

测试环境:xp ,ie7~8  chrome. link 伪类 :(:link,:visited)  这个是链接专用 动态伪类 :(:hover,:active,:focus) <!DOCTYPE html> <html> <head></head> <style type="text/css"> a:link,input:hover{color:blue;} a:visited{color:green;} a:active{

jquery版本间兼容性:checkbox选中状态

最近在学习Jquery,发现attr不太好用,从网上搜了下终于知道其原因,记下备查. 以下为以为网友在js贴吧的内容: 以<input type="checkbox" id="all"/>为例子取值的例子$("#all").attr("checked")在1.6前(含1.6),返回值是boolean类型的true或false:在1.6后,返回值是"checked"或undefined. 再来看赋

IE浏览器常见CSS兼容性问题及解决办法

对于前端开发者来讲,世界上存在着一个神奇的东西——IE浏览器,尤其是低版本的IE浏览器,惨不忍睹的兼容性使其臭名昭著.前端工作者很多的时间都花在了和它打交道上,所以大家纷纷吐槽IE浏览器如何的渣,简直是万恶之源.但是IE浏览器市场份额有非常大,喷完还要接着搞兼容.对于IE浏览器来讲,我们应该有一个客观的评价.首先其兼容性差,原因可想而知,更新速度太慢,要几年才出一个版本,而市场上的FireFox.chrome等浏览器几个月就有一个版本上市.中间那么长的时间足以将其bug充分的暴露出来,其他浏览器

一行代码解决IE兼容性问题

在网站开发中不免因为各种兼容问题苦恼,针对兼容问题,其实IE给出了解决方案Google也给出了解决方案百度也应用了这种方案去解决IE的兼容问题 百度源代码如下 <!Doctype html><html xmlns=http://www.w3.org/1999/xhtml xmlns:bd=http://www.baidu.com/2010/xbdml>;<head><meta http-equiv=Content-Type content="text/h