web-dev-qa-db-fra.com

taille de la boîte: border-box => pour IE8?

je veux box-sizing: border-box pour la balise div.

Pour Mozila Firefox j'ai essayé

        -moz-box-sizing: border-box; 

Pour IE (Internet Explorer) j’ai essayé les deux options ci-dessous alternativement

        -ms-box-sizing: border-box; 
            box-sizing: border-box;

mais cela ne pourrait pas fonctionner dans IE (Internet Explorer) . Bien que j’ai appliqué box-sizing: border-box; pour Internet Explorer il ajoute avec de la bordure et du remplissage en largeur de l’élément. pourquoi ça se passe

quel devrait être le problème? S'il vous plaît, aidez-moi et dites-moi.

REMARQUE: j'utilise Internet Explorer8 et Windows7 ultimate

CODE DE PAGE:

<%@ 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>
19
Pritesh

IE8 prend en charge la version sans préfixe de box-sizing, mais comme pour toutes les "nouvelles" fonctionnalités CSS, il ne le fait qu'en mode standard. -ms-box-sizing n'a jamais été utilisé par aucune version d'IE.

Assurez-vous que votre page comporte une déclaration de type de document pour activer le mode standard dans les navigateurs. Vous devez également placer votre box-sizing après sans préfixe -/tous les préfixes, pas avant eux, et vous débarrasser de -ms-box-sizing car ce n’est vraiment pas nécessaire.

31
BoltClock

Si vous utilisez également min-width ou min-height, la taille de la boîte sera bloquée en tant que "contenu-box" dans IE8 (mode Standards), ce qui signifie que la spécification de border-box n'aura aucun effet.

8
Webdotnet

IE8 + prend en charge le dimensionnement de la boîte.

Soutien:

    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

S'il vous plaît examiner ce jsFiddle

5
RAN

la taille des boîtes prend en charge IE8 + 

vous pouvez voir ici

2
Shailender Arora

Il vous manque box-sizing: border-box;

*{
  box-sizing: border-box;

  -moz-box-sizing: border-box; 
  -webkit-box-sizing: border-box; 
}

IE Ne nécessite pas de CSS spécifique au fournisseur -ms-box-sizing: border-box; n'est pas nécessaire

Fiddle - http://jsfiddle.net/ctHh3/

1
Dipak

mettre ceci dans votre page, problème résolu

<meta http-equiv="X-UA-Compatible" content="IE=Edge"/>
0
Fu-Han Zhang