box-sizing:border-box => for IE8?

Pri*_*esh 19 html css internet-explorer css3 internet-explorer-8

我想box-sizing: border-boxdiv标签.

对于Mozila Firefox,我试过了

        -moz-box-sizing: border-box; 
Run Code Online (Sandbox Code Playgroud)

对于IE(Internet Explorer),我已经尝试过以下两种方式

        -ms-box-sizing: border-box; 
            box-sizing: border-box;
Run Code Online (Sandbox Code Playgroud)

但它无法在IE(Internet Explorer)中运行.虽然我申请 box-sizing: border-box;Internet Explorer,但它增加了边框和填充元素的宽度.为什么会这样?

应该是什么问题?请帮助和消化我.

注意:我使用的是Internet Explorer8Windows7终极版

页面代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="MainPage.aspx.cs" Inherits="MainPage" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="x-ua-compatible" content="IE=8"/>

    <title></title>
    <style type="text/css">
        *
        {
            box-sizing: border-box; /*it gives error:Validation (CSS 2.1): 'box-sizing' is not a known CSS property name. */
            -ms-box-sizing: border-box; 
            -moz-box-sizing: border-box; 
            -webkit-box-sizing: border-box; 
            }
        body
        {
            background: lightblue;
            color: #000000;
            font-family: Trebuchet MS, Arial, Times New Roman;
            font-size: 12px;
        }
        #header
        {
            background: #838283;
            height: 200px;
            width: 1200px;
        }
        #wrapper
        {
            background: #FFFFFF;
            margin: 0px auto;
            width: 1200px;
            height: 1024px;
        }
        #navigation
        {
            background: #a2a2a2;
            float: left;


            margin: 0px 0px;
            width: 1200px;
            height: 25px;
            padding: 3px;
        }
    </style>
</head>
<body>
    <form id="form1" runat="server">
    <div id="wrapper">
        <div id="header">
            <h1>
                Header goes here</h1>
            <br />
            <h2 style="font-size: 60px;">
                ST ERP by Shanti Technology</h2>
        </div>
        <div id="navigation">
        </div>
    </div>
    </form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

Bol*_*ock 31

IE8支持无前缀版本box-sizing,但与所有"新"CSS功能一样,它只在标准模式下实现.-ms-box-sizing从未被任何版本的IE使用过.

确保您的页面具有doctype声明以在浏览器中触发标准模式.你也应该box-sizing 所有前缀之后放置你的前缀,而不是它们之前,并且摆脱-ms-box-sizing它,因为它真的不需要.


小智 8

如果你也使用最小宽度或最小高度,在IE8(标准模式)中,盒子大小将被卡在"内容盒"中,即指定border-box将不起作用.


RAN*_*RAN 5

IE8 +支持盒子大小调整.

支持:

    Opera 8.5+  : box-sizing
    Firefox 1+  : -moz-box-sizing (still prefixed, though some are pushing to have it unprefixed for [Firefox 29][2]).
    Safari 3    : -webkit-box-sizing (unprefixed in modern versions)
    IE8+        : box-sizing
Run Code Online (Sandbox Code Playgroud)

请查看这个jsFiddle