[CSS & Javascript] Bug avec le navigateur Safari

Bug avec le navigateur Safari [CSS & Javascript] - HTML/CSS - Programmation

Marsh Posté le 28-04-2007 à 21:45:15    

Bonsoir à vous !

 

Résumé de mon problème

 

Mauvais positionnement de <div> en CSS sous Safari. Tout est OK avec FireFox 2 et Internet Explorer 7.

 

Cause

 

Safari ne prends pas en compte le Javascript que j'utilise. Enfin j'imagine que c'est ça. Pourtant il n'y a
aucun message d'erreur. Ch'uis une pine en Javascript, donc pas taper SVP.

 

Développement

 

Voici la gueule de mon site à l'état voulu :

 

http://www.buxum.ch/temp/safariOK.png

  

Avec Safari ça donne le caca suivant :

 

http://www.buxum.ch/temp/bugSafari

 

J'utilise le code Javascript suivant pour placer les deux <div> en fonction de la hauteur de la <div> où est placé le texte :

 
Code :
  1. <script type="text/javascript">
  2. <!--
  3. var h = document.getElementById('div').offsetHeight;
  4. h = h + 190;
  5. document.write("<div id=\"branchesBottom\" style=\"z-index:0;position:absolute;left:190px;top:",h,"px;\"><img
  6. src=\"graphismes/branches-bottom.gif\" width=\"75\" height=\"97\" alt=\"\" /></div>" );
  7. -->
  8. </script>
  9.        
  10. <script type="text/javascript">
  11. <!--
  12. var h = document.getElementById('div').offsetHeight;
  13. h = h + 190;
  14. document.write("<div id=\"blocAdresse\" style=\"z-index:1;position:absolute;left:804px;top:",h,"px;width:200px;height:200px;background-color:#4e2614;\">" );
  15. -->
  16. </script>


Je sais c'est un peu barbare comme méthode, mais je n'ai rien trouvé d'autre pour placer dynamiquement une <div> en position absolue... Si quelqu'un connait une astuce, je suis à l'écoute. Autrement, si le souci vous saute aux yeux, je vous serais très reconnaissant de me donner la solution.

 

Au cas où vous voudriez voir le reste du code source, la page concernée est ici

 

Merci de m'avoir lu jusqu'au bout.

 

A peluche !


Message édité par cleanx le 28-04-2007 à 21:47:01
Reply

Marsh Posté le 28-04-2007 à 21:45:15   

Reply

Marsh Posté le 28-04-2007 à 22:14:29    

C'est barbare, dégeux et inutile pour un site avec une telle présentation graphique :-/
 
Je suis absolument sur que ce genre de truc est inutile, la maquette xhtml est mal foutue, c'est sur.
 
PS : On utilise CDATA pour éviter les merdes à l'intérieur des scripts ;)


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
Reply

Marsh Posté le 28-04-2007 à 22:36:16    

Hello shinuza, merci pour ton post !

 

Je sais que c'est du massacre... J'ai essayé avec les CDATA, ça ne change rien.

 

Peut-être qu'on peut aborder le problème autrement :

 

je suis prêt à reprendre mon schéma CSS pour enlever cette horreur, mais je débute en CSS-Positioning et je suis autodidacte. J'ai vraiment de la peine à maîtriser les blocs en position relative, pourtant ce n'est pas faute d'avoir essayé. Je fais donc tout en position absolue.
Me suis tapé le CSS Cookbook 2ème édition d'Oreilly, mais la partie sur le CSS-Positioning est assez succinte... Les tutoriaux que j'ai trouvé ne sont pas très convaincants non plus.  

 

Est-ce que tu aurais une bonne source où je pourrais trouver de bonnes explications ?
Merci d'avance pour le temps que tu me consacreras

Reply

Marsh Posté le 28-04-2007 à 22:45:40    

Bon vais arrêter de faire mon tas de flemme, vais un peu réfléchir...

 

"Php : Some many way to do a crappy job, pretty much sure this is one of them" : tu recommandes quoi à la place du PHP ?

 

Reply

Marsh Posté le 28-04-2007 à 22:46:10    

Bah vu la maquette, j'ai pas vraiment l'impression que tu dois faire appel à quelconque propriété de positioning.
La majorité du temps c'est la merde avec cette méthode.
 
T'as 3 colonnes, je vois pas pourquoi tu t'emmerdes avec ce truc, si tu te débrouilles bien avec l'empilement le texte à l'intérieur "Bienvenue chez..." poussera ce qu'il y'a en dessous :o


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
Reply

Marsh Posté le 28-04-2007 à 22:58:57    

Hmmmm, je vois

 

Ch'uis trop un boulet.

 

Merci bien m'sieur.


Message édité par cleanx le 28-04-2007 à 22:59:24
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed