|
Ce que l'enfer est mise en page? Mise en page Internet Explorer est un concept exclusif qui contrôle à la fois la taille et la position des éléments. IE utilise "layout" de réduire ses besoins de traitement. Dans les navigateurs modernes, tels que FFox, Safari et Opera chaque élément est responsable de sa propre taille et sa position. Dans Internet Explorer 6 et en dessous de cela causerait des problèmes extrêmes liées à la performance. C'est pourquoi IE donne "layout" uniquement à des éléments qui en ont vraiment besoin. De toute façon, "layout" affecte vraiment conceptions CSS, il est donc important de savoir comment y faire face. Quels éléments ont mise en page? Éléments qui ont une mise en page sont: Comment donner layout à un élément? En utilisant une de ces propriétés CSS: float: left / right; position: absolute; display: inline-block; Eléments avec mise en page incorrecte se taille: Disons que vous avez une div avec un width: 10px; Ecrire un texte à l'intérieur et fixer sa taille à 30px. Également définir border: 1px solid black; Dans cette situation, le texte devrait s'écouler hors de la DIV, mais dans IE du div élargit de manière incorrecte. Cela montre que Internet Explorer utilise la largeur, comme un min-width. Absolute éléments positionnés dans un conteneur parent: Disons que vous avez quelques éléments en position absolue à l'intérieur d'un ancêtre en position relative. Dans IE, au lieu d'être positionné par rapport à l'ancêtre, ces éléments se situe par rapport au viewport. Ce bug est causé par interne »d'IE hasLayout" feature. Eléments avec la position relative sont pas considérées comme ayant "layout". Une solution simple pour ce bogue serait de définir une largeur ou en hauteur, pour forcer l'élément à avoir mise en page. Quoi qu'il en soit, peut-être parfois, vous ne saurez pas les dimensions de l'élément, vous pouvez donc utiliser l'astuce suivante: / * Hide from Mac * / height: 1px; ) / * Fin cacher de Mac * / |



















