2009-06-29 5 views
5

Le code est comme ci-dessous:pourquoi la marge de classe ne fonctionne pas?

<html> 
<head> 
<title>test</title> 
</head> 
<body> 
<div><span>shanghai</span><span class="margin"> </span><span>male</span></div> 
</body> 
</html> 

.margin { 
    width:40px; 
    height:auto; 
} 

Répondre

10

Vous ne pouvez pas lui donner une largeur car il s'agit d'un élément en ligne.

Cette propriété indique le contenu largeur des boîtes générées par bloc et remplacés éléments. Cette propriété ne s'applique pas aux éléments au niveau inline non remplacés. - CSS 2.1 Width property

Vous pouvez résoudre ce problème en en faisant un élément de bloc ou inline-block à la place:

display:inline-block 

Cependant, cela peut ne pas être pris en charge par certains navigateurs. Vous pouvez probablement obtenir le même résultat avec ceci, cependant:

margin-left:40px 
+0

toujours le même :( – omg

+0

marge gauche aide! – omg

+0

inline-bloc fonctionne sur les envergures dans IE - voir http://www.quirksmode.org /css/display.html FF2 est encore moins heureux avec inline-block si –

0

Vous devez indiquer que cela est une règle CSS: Ways to include CSS in your page.

+0

yup, .margin est une règle css – omg

+1

Je vois, mais vous mettez cette règle en dehors du doc ​​html, comment le navigateur peut-il savoir que c'est un morceau de CSS ?! –

0

mis

<style> 
    .margin {  
    width:40px;  
    height:auto; 
    } 
</style> 
+0

N'est-ce pas ce que j'ai fait, hm? – omg

+0

Avez-vous mis dans un fichier .html et voir l'effet? – omg

+0

Oui et fonctionne très bien :) – pedrofernandes

1

CSS devrait aller dans la section de tête et doit également être enveloppé dans < style> ...

À moins que vous accédez à cette valeur d'une feuille de style. Vous devez faire référence à ceci dans la section head de votre document:

<link rel="stylesheet" type="text/css" title="RSS" href="MyStyleSheet.css"> 
+0

désolé, je l'ai fait, mais omis dans mon message – omg

+0

quel navigateur utilisez-vous? – James

+0

firefox ...... – omg

0

Essayez de changer votre nom de classe peut-être?

margin est un attribut. Je ne suis pas sûr si CSS a réservé des mots-clés bien.

+0

essayé, ne fonctionne pas, mais – omg

+0

bon de savoir que css ne se comporte pas de cette façon :) soignée. –

0

Je pense que le problème est que l'étiquette est vide. Il suffit de mettre "& nbsp;" entre les deux étiquettes.

+0

essayé, pas d'aide, si – omg

Questions connexes