Home Web Front-end HTML Tutorial css browser compatibility issues (tried in IETester and other browsers)_html/css_WEB-ITnose

css browser compatibility issues (tried in IETester and other browsers)_html/css_WEB-ITnose

Jun 24, 2016 am 11:39 AM



最近在研究一些关于浏览器兼容性问题的css问题,先归纳总结如下:
(1)在一些现代浏览器(opera,chrome,谷歌,safari)中,如果给块级标签如div设置padding后会导致元素的height和width增加,在IE中则不会增加,但是只在IE6中不增加,IE7以上在IETester中测试都会增加,解决办法:可以使用 !important 多设一个 height 和 width


(2)使元素水平垂直居中:垂直居中:将该元素的line-height设置为元素本身的高度,再通过vertical-align: middle;( 注意内容不要换行),水平居中:将元素的margin设置为auto;但是在IE5下没有效果

(3)想给像a,spa这样的行内元素进行样式设置,需要将它的display设置为block

(4)IE在浮动时候产生的双倍距离:若给一个div设置了float,
并且设置了margin,IE5和IE6会产生双倍的间隔,但是在其它的IE版本下就不会,在一些现代浏览器中也不会。解决办法:给该元素添加一个样式:display:inline即可


(5)第二点是 ie对于css的magin padding 等默认值为0px,但ff却不一样,为了保持外观的统一性,即使padding为0你也要写上,以免ff在浏览中的错位。

(6)firefox不支持hand,但ie支持pointer ,两者都是手形指示。 解决方法:统一使用pointer。

(7)ul标签在FF下面默认有list-style和padding, 最好事先声明, 以避免不必要的麻烦;(常见于导航标签和内容列表)

(8)作为外部wrapper的div不要定死高度, 最好还加上 overflow: hidden;以达到高度自适应;

(9)透明度问题:IE下:filter:alpha(opacity=opacityValue);其中opacityValue的值为0-100的整数,firefox下以及其他浏览器:opacity=opacityValue;其中opacityValue的值为0-1的小数

(10)有关float属性带来的差异性:
   1:如下情况:  
    .left{width: 300px;height: 300px;float: left;border:1px solid black;}
    .center{width: 400px;height: 400px;float: left;border:1px solid black;}
    .right{width: 200px;height: 200px;border:1px solid black;clear: both;}
  

one

  
twod

  
three

  (简写)在IE7及以上还有一些现代浏览器中会发生布局错位,而在IE5和IE6中会发生类名为right的块在前面两块右侧正常显示,一般会给right加一个css样式进行限制:clear:both

  2:作为外部 wrapper 的 div 不要定死高度,为了让高度能自动适应,要在wrapper里面加上overflow:hidden; 当包含float的 box的时候,高度自动适应在IE下无效,这时候应该触发IE的layout私有属性.用zoom:1;可以做到,这样就达到了兼容。 例如某一个wrapper如下定义: .colwrapper{ overflow:hidden; zoom:1; margin:5px auto;}

  (11)当内部元素面积大于外部元素面积时:如下例:
   .page{width: 920px;height: 300px;background: purple;margin: 0 auto;}
   .center{width: 400px;height: 400px;border:1px solid black;}
 

  
twod

 

  虽然外部元素定义了宽度,在IE5和IE6中,page的背景颜色会随着内部元素的高度变,但是在IE7及以上,page的背景颜色渲染的还是page本身定义的面积,不会随着内部元素比自身大而改变

  (12)高度不适应问题:
    .page{width: 920px;auto;background: purple;margin: 0 auto;}
    p{margin-top: 20px;margin-bottom: 20px; text-align:center;}
   

    

aaaasddddddddddddddddddddddddddddddddddddddddd


   

There will be normal height adaptation in IE5, IE6, and IE7, but in other versions of IE and in all modern browsers, the background rendering of the page will only accommodate the height of the p element itself
Solution : Define two empty divs before and after the p tag, and set the style as follows:

.page{width: 920px;auto;background: purple;margin: 0 auto;}
p{margin- top: 20px;margin-bottom: 20px; text-align:center;}
.empty{height:0px;overflow:hidden;}

< div class="empty">

                                                      /div> ;
This method will increase the height again in IE5 and has no effect in Safari, but it can be displayed normally in other modern browsers and other versions of IE

(13) in None In the sequence list, how to set the part beyond the li element to be displayed with ellipses: isplay:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; If the li element is in the table, you need to add another style :table{table-layout: fixed;} will be displayed normally. Except that this display cannot be displayed normally in IE5, it can be displayed normally in other browsers


(14) There will be a gap below the image under IE6. Solution: add display:block to img Or set the vertical-align attribute to vertical-align:top | bottom |middle |text-bottom

(15) Text and form alignment method:

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Difficulty in updating caching of official account web pages: How to avoid the old cache affecting the user experience after version update? Difficulty in updating caching of official account web pages: How to avoid the old cache affecting the user experience after version update? Mar 04, 2025 pm 12:32 PM

The official account web page update cache, this thing is simple and simple, and it is complicated enough to drink a pot of it. You worked hard to update the official account article, but the user still opened the old version. Who can bear the taste? In this article, let’s take a look at the twists and turns behind this and how to solve this problem gracefully. After reading it, you can easily deal with various caching problems, allowing your users to always experience the freshest content. Let’s talk about the basics first. To put it bluntly, in order to improve access speed, the browser or server stores some static resources (such as pictures, CSS, JS) or page content. Next time you access it, you can directly retrieve it from the cache without having to download it again, and it is naturally fast. But this thing is also a double-edged sword. The new version is online,

How do I use HTML5 form validation attributes to validate user input? How do I use HTML5 form validation attributes to validate user input? Mar 17, 2025 pm 12:27 PM

The article discusses using HTML5 form validation attributes like required, pattern, min, max, and length limits to validate user input directly in the browser.

How to efficiently add stroke effects to PNG images on web pages? How to efficiently add stroke effects to PNG images on web pages? Mar 04, 2025 pm 02:39 PM

This article demonstrates efficient PNG border addition to webpages using CSS. It argues that CSS offers superior performance compared to JavaScript or libraries, detailing how to adjust border width, style, and color for subtle or prominent effect

What are the best practices for cross-browser compatibility in HTML5? What are the best practices for cross-browser compatibility in HTML5? Mar 17, 2025 pm 12:20 PM

Article discusses best practices for ensuring HTML5 cross-browser compatibility, focusing on feature detection, progressive enhancement, and testing methods.

What is the purpose of the <datalist> element? What is the purpose of the <datalist> element? Mar 21, 2025 pm 12:33 PM

The article discusses the HTML &lt;datalist&gt; element, which enhances forms by providing autocomplete suggestions, improving user experience and reducing errors.Character count: 159

What is the purpose of the <progress> element? What is the purpose of the <progress> element? Mar 21, 2025 pm 12:34 PM

The article discusses the HTML &lt;progress&gt; element, its purpose, styling, and differences from the &lt;meter&gt; element. The main focus is on using &lt;progress&gt; for task completion and &lt;meter&gt; for stati

How do I use the HTML5 <time> element to represent dates and times semantically? How do I use the HTML5 <time> element to represent dates and times semantically? Mar 12, 2025 pm 04:05 PM

This article explains the HTML5 &lt;time&gt; element for semantic date/time representation. It emphasizes the importance of the datetime attribute for machine readability (ISO 8601 format) alongside human-readable text, boosting accessibilit

What is the purpose of the <meter> element? What is the purpose of the <meter> element? Mar 21, 2025 pm 12:35 PM

The article discusses the HTML &lt;meter&gt; element, used for displaying scalar or fractional values within a range, and its common applications in web development. It differentiates &lt;meter&gt; from &lt;progress&gt; and ex

See all articles