Pb margin-top : 2 éléments côte-à-côte se chevauchent! - HTML/CSS - Programmation
Marsh Posté le 17-04-2010 à 18:33:59
Salut,
Il faut davantage faire confiance à FF qu'à IE concernant le respect des spec CSS. Donc je dirai plutot que c'est IE qui merde même si il te donne finalement ce que tu veux.
Je pense que c'est parce que tu donnes un margin-top à un élément inline (les li).
Plusieurs solution à essayer :
- le mettre sur le ul
- ou utiliser position: relative; top: -3.8em; qui est fait pour ça
- et surement d'autres...
Marsh Posté le 17-04-2010 à 19:38:27
Hello.
Je suis d'acc' avec toi pour le 1 : c'est comme ça que j'avais commencé... Mais avec le même succès...
Je revois ça demain
@+
Marsh Posté le 19-04-2010 à 17:22:47
Hello
A l'origine c'est ça :
Code :
|
Que j'ai remplacé par ça (j'ai juste interverti la div "header" et la div "h1 id="logo" ) :
Code :
|
Marsh Posté le 19-04-2010 à 22:10:25
Ok..
En fait le plus simple et direct était de transformer le #header #header_user directement...
Avec par ex un :
margin:-3em 0em 0 0;
Au lieu de
margin:0.6em 0.6em 0 0;
Edit :
Non, m..de. J'avais oublié que ss Firefox ce n'était pas les mêmes résultats...
Bref toujours coincé pour le moment...
Edit2 : en supprimant les clear left et text align, je reviens au bon résultat.. C'est ok now
Marsh Posté le 21-04-2010 à 00:19:43
Re-salut
Je reviens avec mon @@ d'entete (via le theme prestashop de base)
En fait, avec le même code, j'obtiens sous Firefox :
Et sous IE7 :
Coté code, ce qui est notable par rapport à ces menus serait :
Code :
|
(Si je joue du margin-top sur la derniere Div (avec une margin-top légèrement négative), c'est ok sous IE7, mais les menus, solidaires, se barrent vers le haut sous Firefox...)
Marsh Posté le 21-04-2010 à 05:02:10
bon on va faire simple :
tu dois faire OK pour firefox ensuite tu patches pour IE
surtout pas l'inverse
Marsh Posté le 21-04-2010 à 10:24:04
" tu patches pour IE " : c'est à dire ?
Marsh Posté le 21-04-2010 à 11:54:27
c-a-d que tu fais d'abord en sorte que ton design soit comme tu veux sous FF.
Ensuite tu adaptes pour IE.
T'as deux options possibles :
- tu écris des règles CSS qui seront comprise par IE
- tu les fais directement suivre par des règles qu'il ne comprendra pas et qui seront destinées à FF et autres nav qui suivent les specs.
(on utilise pour ça des sélecteurs qu'IE ne comprend pas et donc ignore)
C'est ce qu'on appelle des hack CSS.
Sinon tu dev ta CSS normalement pour FF et tu fais une CSS spécifique pour les IEs que tu chargeras par le biais des commentaires conditionnels dans le html.
La deuxième méthode semble plus fastidieuse mais c'est moins prise de tête je trouve.
Marsh Posté le 21-04-2010 à 12:39:36
Skopos a écrit : |
Moui, tout ça ca ne va pas être simple-simple, dans la mesure où comme dit plus haut ce sont des pages sous Prestashop.
Pas de "vraie page HTML" juste un paquet de pages .php reliées entre elles. On ne peut (presque) qu'agir sur le fichier css (et sur l'agencement des modules à partir du bloc "administration du site" - et c'est là que ca se complique, selon tel ou tel agencement, IE et FF vont l'interpréter différement, d'où mon "bug" plus haut par exemple...)
Marsh Posté le 21-04-2010 à 12:48:33
Pour charger une CSS spécifique t'as juste besoin de modifer le head vu que c'est là qu'elles sont chargées.
Je connais pas ce CMS dans le détail mais ça m'étonnerais que t'ai pas accès à des fichiers de templating...
Marsh Posté le 21-04-2010 à 12:55:54
Skopos a écrit : Pour charger une CSS spécifique t'as juste besoin de modifer le head vu que c'est là qu'elles sont chargées. |
Si bien sûr j'ai accès à tous les fichiers CSS. Pas de soucis là-dessus (d'autant plus que la majorités des éléments CSS sont sur un seul et même fichier).
Mais il y a aussi la façon dont les divers éléments sont présentés/imbriqués sur la page, et là j'ai moins de controle... Ce sont des "relais" entre fichiers php, de plus il ne faut pas trop bidouiller dedans : ça peut aussi rentrer en conflit avec le systeme de gestion/administration des modules...
Marsh Posté le 21-04-2010 à 12:58:25
En fait, avec Prestashop (que je découvre), il y a 1 seul et unique thème à la base. Et il est déjà assez (trop ?) élaboré.
Pas de "theme basic" comme chez Drupal ou CMSMS par exemple... (ou en tous cas je ne les ai pas trouvés !)
Je devrais creuser un peu là-dessus, retrouver de nouveaux themes gratuits et "basiques", pour greffer mes trucs par dessus ensuite, mais le peu que j'ai vu des thèmes gratuits n'était pas très emballants - moches et trop développés.
(PS : j'ai l'impression que Prestashop est plus à rapprocher de Joomla! : un gros truc "tout-fait" d'entrée, mais un peu difficile à gérer par la suite, à moins d'acheter des thèmes payants plus tard...)
Marsh Posté le 21-04-2010 à 13:02:05
Je ne parle pas de fichiers CSS mais bien de fichiers php.
Tu dois peut-être avoir un fichier du style header.php qq part...
Marsh Posté le 21-04-2010 à 16:28:31
Skopos a écrit : Je ne parle pas de fichiers CSS mais bien de fichiers php. |
Oui et je l'ai bidouillé 2 ou 3 fois.
C'est lui qui parle des 2 divs/ID que sont "header" et h1 id="logo"
L'original est :
Code :
|
Et ma bidouille :
1. J'ai changé h1 id="logo" par div id="banniere"
(Evidemment j'ai fait de même dans le css)
2. Je les ai intervertis
3. J'ai mis un logo en gif et non jpg (transparence voulue...)
Code :
|
Ces bidouilles n'ont pas posé de soucis, sauf le fait que je les ai intervertis, peut-être...
(Ensuite suis revenu dans le CSS et j'ai bidouillé pour en revenir au résultat "ok" sous FF )
Marsh Posté le 21-04-2010 à 17:05:20
non moi je parle d'un fichier qui contient les balises <head> là ou se trouve les appels de feuilles de style.
Marsh Posté le 21-04-2010 à 17:52:34
Oui excuse, c'est alors header.php (et non .tpl)
Code :
|
(La feuille de style étant 'global.css')
Marsh Posté le 22-04-2010 à 11:55:42
Désolé je ne me suis pas penché sur le fonctionnement de smarty.
Marsh Posté le 22-04-2010 à 12:28:27
Pas grave...
@+ et merci quand même
Marsh Posté le 17-04-2010 à 16:18:43
Salut.
Dans un thème de type Prestashop, j'ai cette apparence en haut de mon thème de base :
Je souhaiterais, pour avoir plus simple, ceci :
D'où je code un margin-top (négatif) ...
Voici l'ensemble du code concerné, et en rouge mon ajout :
Mais au final, j'obtiens ça :
-> Mes 2 éléments "mon compte" et "panier"' viennent se chevaucher.
PS : ce bug est avec Firefox. Avec IE, j'obtiens ce que je veux !
Message édité par toum_toum le 21-04-2010 à 00:19:53
---------------
“Et maintenant, la météo" - Soloviev 2022-2024