Home > Web Front-end > HTML Tutorial > DIV CSS Browser Compatibility Research 2_html/css_WEB-ITnose

DIV CSS Browser Compatibility Research 2_html/css_WEB-ITnose

WBOY
Release: 2016-06-24 12:31:12
Original
1075 people have browsed it

[Reprint, archive, record]

Due to compatibility issues between browsers, when making web pages, in order to make the page display relatively consistent in different browsers ;So I summarized the Hacks between several browsers and some related precautions on browser compatibility issues. Now browsers basically need to be compatible with IE6; IE7; IE8; FF.

Section 1 CSS HACK Summary Quick Check List tr>

浏览器

Hack(不支持的为红色)

IE6

“*”    “_”    “9”    “!important”

IE7

“*“    “_”    “9”    “!important”

IE8

“*“    “_”    “9”    “!important” 

FF

“*”    “_”    “9”    “!important”

Browser

Hack (unsupported ones are in red)

IE6

.main{

         background-color: #CC00FF;                /*所有浏览器都会显示为紫色*/---------ALL

         background-color: #FF00009;            /*IE6、IE7、IE8会显示红色*/------------IE8

         *background-color: #0066FF;              /*IE6、IE7会变为蓝色*/-------------------IE7

         _background-color: #009933;             /*IE6会变为绿色*/--------------------------IE6

         background-color: #000000!important;}/*FF会变为黑色*/---------------------------FF

"*" "_" "9" "!important"

IE7
"*" "_" "9" "!important"
IE8 "*" "_" "9" "!important"
FF “*” “_” “9” “!important”
For example:
.main{ background-color: #CC00FF; /*All browsers will display as Purple*/---------ALL background-color: #FF00009; /*IE6, IE7, IE8 will display red*/------------ IE8 *background-color: #0066FF; /*IE6 and IE7 will turn blue*/------------------ IE7 _background-color: #009933; /*IE6 will turn green*/--------------------------IE6 background-color: #000000!important;}/*FF will become black*/--------------------------FF
Section 2 Common Compatibility Issues 2.1 DOCTYPE affects CSS processing
< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/ xhtml1-Frameset.dtd">

Transitional type: refers to a transitional type. With this type of browser, the parsing of XHTML is relatively loose, and tags in HTML4.01 are allowed to be used, but must comply with the syntax of XHTML. This is a common method now, and it is this type by default when creating a web page with Dreamweaver.

Strict type: Strict type, the browser will be relatively strict when using it, and does not allow the use of any form of identification and attributes, such as directly using the bgcolor background color attribute in the element, etc.

Frameset type: frame page type. If the web page uses a frame structure, it is necessary to use such a document declaration.

2.2 Encoding differences cause IE6 to be unable to parse CSS files normally

The web page uses UTF-8 encoding format, which is not a problem. The problem is that the external CSS file defaults to ANSI encoding and is not saved in UTF-8 format. You may find that this is no problem under normal circumstances, but when the CSS file contains Chinese comments, it may not be satisfactory! It is estimated that browsers below IE6 cannot parse correctly due to encoding issues when parsing this CSS file, so CSS does not work under IE6. There are still many people using IE6. Therefore, this problem needs to be solved:

Method 1: Save CSS, JS and web page files in UTF-8 format.

Method 2: Remove the Chinese comments in CSS and JS, or change them to English.

The above is that IE6 cannot correctly parse the CSS file due to encoding problems

2.3 The FORM tag automatically adds MARGIN margins in IE

This tag will automatically add some margins in IE, and in IE The margin in FF is 0. Therefore, if you want the display to be consistent, it is best to specify margin and padding in CSS. To address the above two problems, CSS generally uses the style form{margin:0;padding:0; }

2.4 UL tag

UL tag has padding value by default in Mozilla, but in IE only margin has value;

So first define ul{margin:0;padding:0; }

2.4 The problem of doubling MARGIN

The margin set in IE for a div set to float will be doubled. This is a bug that exists in ie6. The solution is to add display:inline to this div; for example:

The corresponding CSS is

#imfloat{

float:left;

margin:5px; /*Under IE, it is understood as 10px*/

display: inline; /*Under IE, it is understood as 5px*/ }
Related labels:
source:php.cn
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template