Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3343 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Fusionner deux marges verticales

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Fusionner deux marges verticales

n°932262
Cutter
Posté le 27-12-2004 à 10:16:22  profilanswer
 

Hello!
 
Voici une page simple:
 
HTML:

<BODY>
  <DIV class="header">
   <P>En-tête
  </DIV>
  <DIV class="menu">
   <P>Barre de menu
   <UL>
    <LI>Menu 1</LI>
    <LI>Menu 2</LI>
    <LI>Menu 3</LI>
    <LI>Menu 4</LI>
    <LI>Menu 5</LI>
   </UL>
  </DIV>
  <DIV class="footer">
   <P>Pied de page
  </DIV>
  <P>Paragraphe
 </BODY>


 
CSS:

body {
background: orange;
font-family: sans-serif;
font-size: small;
}
 
li {
background: blue;
}
 
.header {
background: yellow;
height: 100px;
}
 
.menu {
background: green;
width: 150px;
}
 
.footer {
background: red;
}


 
Voici ce que j'ai lu dans les recommendations du W3C au sujet des CSS:

Citation :

4.1.1 Mise en forme verticale
 
Pour les éléments de type bloc non-flottants, la largeur de la marge correspond à une distance minimum entre le contenu et le bord des boîtes qui l'entourent. Si aucune bordure, ni espacement, ni contenu ne séparent deux (ou plus) marges verticales adjacentes, alors elles fusionnent et la résultante est la plus grande de ces valeurs de marge. Dans la plupart des cas, cette fusion des marges verticales donne un meilleur aspect visuel, plus proche des attentes de l'auteur.


 
A priori, "header" devrait partager sa marge inférieure avec "menu" puisque je n'ai spécifié aucune bordure, ni marge, ni padding. Idem pour "menu" et "footer". Pourtant, même en forcant la valeur de "margin", de "padding" et de "border" à zéro, j'ai toujours un décalage entre les deux. C'est à s'arracher les cheveux. [:jofusion]
J'aimerais comprendre pourquoi ce décalage apparaît, savoir ce qu'il représente (est-ce une marge?), et comment le supprimer le plus simplement possible.
 
Voilà ce que ça donne:
http://img159.exs.cx/img159/2589/ecartpourri4gh.th.gif
 
D'avance merci. :jap:


---------------
last.fm
mood
Publicité
Posté le 27-12-2004 à 10:16:22  profilanswer
 

n°932264
gm_superst​ar
Appelez-moi Super
Posté le 27-12-2004 à 10:19:22  profilanswer
 

C'est à cause des marges des paragraphes, non-nulles par défaut.


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
n°932265
Profil sup​primé
Posté le 27-12-2004 à 10:20:13  answer
 

si je me souvient bien retire le padding/margin du ul et li.
 
ensuite met ca http://www.w3schools.com/css/pr_li [...] sition.asp en inside.

n°932267
Cutter
Posté le 27-12-2004 à 10:32:11  profilanswer
 

gm_superstar a écrit :

C'est à cause des marges des paragraphes, non-nulles par défaut.


En effet, lorsque je mets

p {
margin: 0;
}


dans les CSS, les écarts disparaissent.
 
Mais alors comment faire pour avoir des paragraphes qui s'écartent les uns des autres (pour plus de lisibilité) sans que cet écart n'agisse à l'éxtérieur du conteneur (le DIV en l'occurrence)?


Message édité par Cutter le 27-12-2004 à 10:37:40

---------------
last.fm
n°932269
gm_superst​ar
Appelez-moi Super
Posté le 27-12-2004 à 10:39:10  profilanswer
 

Essaye en donnant un padding aux DIV (par défaut la marge d'un paragraphe est de 1em je crois)


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
n°932272
Cutter
Posté le 27-12-2004 à 10:48:21  profilanswer
 

gm_superstar a écrit :

Essaye en donnant un padding aux DIV (par défaut la marge d'un paragraphe est de 1em je crois)


Tu as raison, ça supprime les écarts quelle que soit la valeur du padding (même avec 1px). Pourquoi? Si la valeur de la marge d'un paragraphe est de 1em, il serait plus logique que l'écart soit supprimé lorsque le padding du DIV et supérieur où égal à 1em (ou à 0.5em), non? :??:
 
P.S: d'ailleurs à quoi correspond une unité "em" svp?


---------------
last.fm
n°932280
fastclemmy
(re-)Dictateur en plastique
Posté le 27-12-2004 à 10:54:28  profilanswer
 

Cutter a écrit :

P.S: d'ailleurs à quoi correspond une unité "em" svp?


 
http://www.publishtogether.com/pompeurs/CssUniteEm

n°932288
Cutter
Posté le 27-12-2004 à 10:59:18  profilanswer
 

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Fusionner deux marges verticales

 

Sujets relatifs
Fusionner des champs :)[vba]Ignorer marges d'impressions
fusionner plusieurs tables mysql en une seule...(bis)fusionner plusieurs tables mysql en une seule...
[Java] Fusionner des types "Enumeration"[CSS] Mac : Problèmes divers - PART II : IE Mac et les marges
CSS - probleme de marges avec IE par rapport à FIREFOXACCESS - Modif marges d'un état par VBA
Marges négatives sous Netscape[LaTeX] Réduction des marges autour du texte sur A4
Plus de sujets relatifs à : Fusionner deux marges verticales


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)