[兼容]——IE 8 常见兼容性问题
接触了一个PC端网页开发的项目,要求兼容到IE 8,遇到不少坑,在这里记录下:
1、IE8 的兼容性视图
bug描述:IE8有许多新更新,但微软为了兼容以前的IE浏览器,提出了“兼容性视图”的概念,它可以使用低版本IE(6、7)内核,显然这并不是我们想要的,所以需要使用meta标签来强制IE8使用最新的内核渲染页面
bug解决:
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
2、display:inline-block不支持
bug描述:在IE8 中,使用display: inline-block没有预期效果。
bug解决:
div {
display: inline-block;
*display: inline;
zoom: 1;
}
3、line-height 异常
bug描述:我们经常使用line-height来使单行文本垂直居中,但此方法在IE8 中有异常表现,具体为:一是IE8 不支持此方法,二是当我们使用hack后,元素不能完全垂直居中
bug解决:
div {
width: 200px;
height: 40px;
line-height: 40px;
line-height: 38px\9; // IE8 hack方法,有像素偏差
}
4、max-width
bug描述:我常在开发中使用 max-width来限制元素的最大宽度,但有时候并不奏效,慢慢摸索才明白IE解析max-width的规则:严格要求父级元素是固定的。
bug解决:给直接父元素写上 width属性
5、placeholder
详见:【bug】—— IE 8-不支持 placeholder 解决方法
6、background-size: cover
bug描述:如果你想使用background-size: cover设置全屏背景,很遗憾IE8办不到...但可以使用IE独有的AlphaImageLoader滤镜来实现
bug解决:
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=Enabled, sizingMethod=Size , src=URL)
将sizingMethod设置为scale就OK了。还没完,如果你在此背景之上放置了链接,那这个链接是无法点击的。一般情况下的解决办法是为链接或按钮添加position:relative使其相对浮动。
7、clearfix
.clearfix:before,
.clearfix:after {
content: " "; /* 1 */
display: table; /* 2 */
}
.clearfix:after {
clear: both;
}
.clearfix {
*zoom: 1;
}
8、美化input选择文件框
html:
<div class="wrap">
<img src="xxx" alt="">
<input accept="image/jpeg,image/jpg,image/png">
</div>
.wrap {
width: 190px;
min-height: 100px;
display: inline-block;
position: relative;
}
.warp img {
position: absolute;
top:0;
left: 0;
width: 100%;
height: 100%;
}
.wrap input {
width: 100%!important;
height: 100%!important;
position: absolute;
top:0;
left: 0;
font-size: 200px; // 解决IE8 - 下input高度撑不开的bug
opacity: 0;
-ms-filter: 'alpha(opacity=0)';
filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
}
[兼容]——IE 8 常见兼容性问题的更多相关文章
- html常见兼容性问题
html常见兼容性问题? 1.双边距BUG float引起的 使用display 2.3像素问题 使用float引起的 使用dislpay:inline -3px 3.超链接hover 点击后失效 ...
- css 常见兼容性问题及解决方案
css 兼容问题一直是困扰前端开发人员的大难题,提到兼容性立马想到了万恶的ie6,说多了都是泪,还是整理一些常见的兼容性问题以及解决的方案吧. 一. 浮动元素双边距. ①条件:ie6下,如果给元素设置 ...
- CSS常见兼容性问题总结
原文链接:渔人码头 http://www.cnblogs.com/imwtr/p/4340010.html?utm_source=tuicool&utm_medium=referral 浏览器 ...
- JS常见兼容性问题
兼容性问题:函数(方法)兼容 描述:部分W3C指定的函数,有部分老的浏览器不支持 解决: 条件判断,如果有,则使用,添加原型方法,例如 String 的 trim 方法 if(!String.prot ...
- IE下常见兼容性问题总结
概述 本小菜平时主要写后台程序,偶尔也会去写点前端页面,写html.css.js的时候,会同时开着ie6.ie7.ie8.ie9.chrome.firefox等浏览器进行页面测试,和大部分前端开发一样 ...
- web端常见兼容性问题整理
一.html和css 各浏览器的默认内外边距不一致问题 最明显的是ul标签内外边距问题,ul标签在IE-7中,有个默认的外边距,但是在IE8以上及其他浏览器中有个默认的内边距. 解决办法:*{marg ...
- js常见兼容性问题以及解决方法
1.关于使用 event对象,出现的兼容性问题IE/Chrom: event.clientX;event.clientYFF/IE9以上/Chrom: 传参e e.clientX;e.client ...
- 前端之CSS常见兼容性问题
1.双倍浮动BUG: 描述:块状元素设置了float属性后,又设置了横向的margin值,在IE6下显示的margin值要比设置的值大: 解决方案:给float的元素添加 display:inline ...
- CSS常见兼容性问题
DOCTYPE 影响 CSS 处理 Firefox: div 设置 margin-left, margin-right 为 auto 时已经居中, IE 不行 Firefox: body 设置 tex ...
随机推荐
- 深入浅出 JMS(三) - ActiveMQ 安全机制
深入浅出 JMS(三) - ActiveMQ 安全机制 一.认证 认证(Authentication):验证某个实体或者用户是否有权限访问受保护资源. MQ 提供两种插件用于权限认证: (一).Sim ...
- OSGi 系列(三)之 bundle 详解
OSGi 系列(三)之 bundle 详解 1. 什么是 bundle bundle 是以 jar 包形式存在的一个模块化物理单元,里面包含了代码,资源文件和元数据(metadata),并且 jar ...
- MySQL相关知识总结
1. 显示所有表 show tables; 还有information_schema数据库里面有tables表,记录了所有表信息 use information_schema; select * fr ...
- linux下 C程序 参数和内存
#include <stdio.h> int main(argc, argv) int argc;char *argv[]; { printf("argc=%d \n&q ...
- HTTP 500.21 处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler”
问题:处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler” IIS7下部署网站出现错误,原因是先安装的II ...
- CentOS 6.5 搭建cuda环境
首先这一篇文章是我搞了N多天后,才成功一点经验,为了不至于下次搭建时忘记,所以记录下来.nivida官网有一个文档,大家可以下载看一下 https://developer.nvidia.com/cud ...
- 处理No CPU/ABI system image for target的方法
处理No CPU/ABI system image for target的方法 最近菩提搭建完成Android开发环境后,在创建安卓模拟器的时候遇到了问题.这个问题就是图片中显示的no CPU/ABI ...
- 2018.07.17 后缀自动机模板(SAM)
洛谷传送门 这是一道后缀自动机的模板题,这道题让我切身体会到了后缀自动机的方便与好写. 代码如下: #include<bits/stdc++.h> #define N 2000005 #d ...
- Linux抓包
默认系统里边没有安装有tcpdump的,无法直接使用 这里我们可以使用yum来直接安装它 yum install -y tcpdump 如果忘记了这个软件的用法,我们可以使用 tcpdump ...
- (小数化分数)小数化分数2 -- HDU --1717
链接: http://acm.hdu.edu.cn/showproblem.php?pid=1717 举例: 0.24333333…………=(243-24)/900=73/3000.9545454…… ...