28173 sujets

CSS et mise en forme, CSS3

Bonjour,

Je suppose que mon problème est à la portée de quelqu'un qui aura un peu d'expérience avec les feuilles de style. En ce qui me concerne, je suis tout juste capable de produire des pages valides sans trop de tableaux...

En l'occurence il y en a un qui me pose problème, sachant que je travaille avec Spip donc je dois trouver des comportements applicables de façon récurrente (ce qu'on appelle une boucle).

Or là mon souci, c'est le "dépassement" d'une cellule, que l'on voit s'étendre jusqu'à se retrouver sous celle d'à côté, et ce uniquement sous Internet Explorer.
Est-ce qu'il y a un hack IE à appliquer ? Ou bien est-ce que ma feuille de styles est incomplète ?

S'il y a une solution qui puisse m'éviter un tableau, je suis preneur, d'autant plus que ça m'apprendra certainement beaucoup pour la suite. En fait j'ai déjà essayé avec uniquement des blocs mais leurs largeurs ne s'équilibraient pas 50/50 et du coup la barre verticale (qui était une bordure sur mon essai) n'était pas centrée.

La page incriminée :
http://www.serviteursdejesusetdemarie.org/actu/rubrique.php3?id_rubrique=24
Où l'on voit que la partie centrale débrode vers la droite sous IE (il faut descendre en bas de page pour s'en rendre compte avec la bordure).

Le code CSS correspondant :

#contenu {margin: 0px 0px 0px 0px; padding:0px 14px 0px 14px;}

#haut {margin:0px 0px 0px 0px; padding:0px 0px 0px 0px;}
#haut-hg {margin:0px; padding:0px;}
#haut-hd {margin:0px; padding:0px;}
#haut-bg {margin:0px; padding:0px;}
#haut-hd {margin:0px; padding:0px;}
#haut-contenu {margin:0px; padding:8px 8px 6px 8px;}
img.logo-rubrique {margin:0px 20px 0px 0px;}
#haut-contenu h2 {color:#fff; font-family: Georgia, Times New Roman, Times, serif;}
#haut-contenu h2 a {color:#fff; font-family: Georgia, Times New Roman, Times, serif;}
.titre-rub-en-cours {font-size:1.5em; font-family: Georgia, Times New Roman, Times, serif;}
#rub-texte {font-size:0.75em; color:#fff; font-weight:bold; font-family: Arial, Helvetica, sans-serif;}
#rub-texte a {color:#fff;}
#rub-url {font-size:0.9em; color:#fff; font-weight:bold; font-family: Arial, Helvetica, sans-serif;}
#rub-url a {color:#fff;}

#bas {margin:0px; padding:0px; border-style:solid; border-width:2px; border-top-width:0px;}
div.separateur {width:2px; margin:0px; padding:0px; border:none;}
.chaque-cellule {margin: 0px; padding: 10px 20px 10px 20px; border:none;}
#bas h1 {color:#f19a1b; margin:0px 0px 5px 0px; padding:0px;}
#bas h1 a {color:#f19a1b;}
#bas h2 {color:#999; margin:0px; padding:0px; font-size:0.7em; font-family: Arial, Helvetica, sans-serif;}
#bas h2 a {color:#cb5513; font-family: Arial, Helvetica, sans-serif;}
#bas h2 a:hover {color:#f19a1b;}
#bas h3 {color:#999; margin:0px; padding:0px; font-size:0.7em; font-family: Arial, Helvetica, sans-serif; font-weight:normal;}
#bas h3 a {color:#cb5513; font-family: Arial, Helvetica, sans-serif;}
#bas h3 a:hover {color:#f19a1b;}
/* articles */ #bas h1 a.article {background-image:url('/actu/squelettes/autres/images/menu-puce-article.gif'); background-repeat:no-repeat; background-position:left; padding-left:11px;}
/* articles */ #bas h2 a.article {background-image:url('/actu/squelettes/autres/images/menu-puce-article.gif'); background-repeat:no-repeat; background-position:left; padding-left:11px;}
#bas div.sephoriz {margin:0px 90px 0px 20px; padding:0px; border-width:2px 0px 0px 0px; border-style:solid;}


Merci beaucoup à mon/mes sauveur(s)...
Modifié par olivier-m (14 Feb 2006 - 11:13)
olivier-m a écrit :
PS : le meurtre, c'est celui d'IE...

Merci d'éditer ton titre pour quelque chose de plus pertinent, et d'éviter de tels termes.
Je connais ces différences d'interprétation et j'ai lu les liens que tu me recommandes et c'est justement à cause de cela que je suis passé à un système de tableau : mes largeurs en pourcentages (2x50% + 1 cellule de 2px de large) sont appliquées à des cellules (td).

Et c'est bien la première fois que je vois un tableau déformé comme ça par IE.

Voilà pourquoi j'ai créé ce sujet : pas pour qu'on me dise "je n'ai pas regardé le code" mais justement pour que quelqu'un d'un peu plus calé que moi regarde mon code et voit "l'erreur" que je ne comprends pas. Smiley smile

J'ai essayé de saisir ce qui clochait grâce à aardvark en coloriant les différentes zones pour voir lesquelles se déforment mais malheureusement c'est plutôt avec IE que j'aurais besoin de ce genre d'extension...

J'ai glissé un peu partout des
<hr class="spacer">
avec
.spacer {clear: both; visibility:hidden; height:0px; margin-bottom:0px; margin-top:0px; margin-left:0px; margin-right:0px; }

Je dois dire que je ne comprends pas bien cette astuce mais il se trouve que très souvent ça fait rentrer les choses dans l'ordre sur ce genre de problème.

Alors je ne sais pas si ce qui me manque est un attribut sur mes styles existants ou bien d'ajouter une astuce comme celle que je cite ici mais je suis prêt à tout. A tout. Smiley smile
Salut,

dans la <div id="bas">, supprime le width="100%" qui se trouve dans la balise <table> :
<div id="bas">
<hr class="spacer">
<table [b]width="100%"[/b] cellpadding="0" cellspacing="0">


A+
Modifié par Alan (13 Feb 2006 - 15:09)
Hum...
Comprends pas. Smiley eek
Smiley smile

Bon cela dit ça marche, pour info pour les suivants.

PS : toujours intéressé à voir un site sur lequel je pourrais voir à peu près ce que j'ai fait, sans tableau (c'est-à-dire deux colonnes 50/50 avec séparation de 2 px de large entre les deux)
J'ai souvent constaté ce problème sur IE avec width="100%" à un tableau compris dans une div.. ça ne simplifie souvent pas du tout la vie une mise en page avec tableau.

Dans ton cas, tu pourrais les supprimer complétement, je ne vois pas vraiment la difficulté. As tu essayé ?
Modifié par Alan (13 Feb 2006 - 15:33)
@Alan : oui bien sûr que j'ai essayé mais impossible d'avoir une bordure verticale bien centrée. Même avec firefox si je mets deux largeurs de 50% avec un float left et un right, ça ne passe pas, il y en a un qui se retrouve sous l'autre. Alors je baisse à 45% et là c'est bon mais pas sous IE. Bref pour moi c'est pas plus simple.

Pourtant je suis sûr que ça doit être faisable, ça, il n'y a pas de doute...
Modifié par olivier-m (13 Feb 2006 - 17:33)
pour eviter d'avoir a remettre le padding et les marges a 0 tu peu deja appliquer ca


* {
	margin:0 0;
	padding: 0 0;
}

ca evite deja pas mal de soucis
++
Bien vu, l'aveugle !

C'est vrai que je ne pense généralement à ça qu'en fin de projet... Smiley ohwell
Modifié par olivier-m (13 Feb 2006 - 18:14)
Bonsoir Olivier,

En fait je parlais d'une manière générale de tous les tableaux que tu utilises pour la mise en page.
Modérateur
olivier-m a écrit :
Bien vu, l'aveugle !

C'est vrai que je ne pense généralement à ça qu'en fin de projet... Smiley ohwell


Bonjour,

Je me trompe ou bien je sens un peu de tension dans l'air ? olivier-m, je trouve quelques-unes de tes réactions un peu raide. Tu es sans doute très impatient d'obtenir l'aide requise et découragé de ne pas trouver de solution, mais essaye de réagir gentillement, même si les réponses ou les commentaires ne te conviennent pas. J'ignore si c'est de l'humour, mais lorsque tu dis "Bien vu, l'aveugle", ca ne me semble pas très sympathique. Smiley ohwell
"bien vu l'aveugle" est une remarque qui fait partie de la langue française depuis... depuis... avant ma naissance, en tout cas. Smiley smile

N'oublions pas de préciser que ce n'est pas une remarque de mauvais esprit.

@ Alan : oui je devrais essayer. J'y vais trop lentement.
Modifié par olivier-m (14 Feb 2006 - 10:26)
Modérateur
olivier-m a écrit :
"bien vu l'aveugle" est une remarque qui fait partie de la langue française depuis... depuis... avant ma naissance, en tout cas. Smiley smile

N'oublions pas de préciser que ce n'est pas une remarque de mauvais esprit.


Me voilà rassuré. Je n'avais jamais vraiment entendu cette expression, peut-être parce que je suis Québécois et à ma connaissance, je n'ai jamais entendu ou lu ce type d'expression. Je pensais que c'était du sarcasme et que tu t'adressais à StyleSho en le traitant d'aveugle. Smiley smile

Mes excuses et bonne journée ! Smiley cligne
pas de problème, je suis parfois sec donc j'imagine que tu as dit ça parce que tu avais lu d'autres de mes posts.

@+