Un bug chiant ! [HTML] - HTML/CSS - Programmation
Marsh Posté le 21-05-2003 à 10:34:55
Ca m'a l'air compliqué tout ça pour des pauvres rollovers... Pour info, il est possible de faire des rollovers sans JavaScript, juste avec des CSS : http://www.wpdfd.com/editorial/wpd1102.htm#feature
Marsh Posté le 21-05-2003 à 10:47:28
j'ai viré la partie javascript car elle n'est pas en cause dans le bug...la preuve...memem en la retirant, le bug est toujours la !
Marsh Posté le 21-05-2003 à 10:48:56
url ?
Marsh Posté le 21-05-2003 à 10:52:17
pour info, je ne me sert pas de toutes les fonction de la feuille de style...(je garde ca en réserve pour des évolutions futures)
Marsh Posté le 21-05-2003 à 10:53:52
Faut faire le contraire, mettre les <a> dans les <td> et pas l'inverse.
Marsh Posté le 21-05-2003 à 10:55:32
je vais essayer...merci...
EDIT : Bon c testé...alors, y'a plus le bug, mais le probleme c'est que maintenant c plus le bouton qui est considéré comme le lien, c le texte du bouton...et ca m'ennui un peu
Je mets le code obtenu apres modification :
Code :
|
Marsh Posté le 21-05-2003 à 11:32:40
Trop fort ça...
Citation : Ce FTP est réservé aux personnes, inscrites sur le forum, ayant satisfait certaines conditions... |
cf. ton site
Marsh Posté le 21-05-2003 à 11:42:11
ben oui...y'a eut un drole d'abus...au départ, tt le monde pouvait y mettre tout ce qu'il voulait...résultat de la premiere semaine y'avait plein de virus et de trucs illégaux...
Marsh Posté le 21-05-2003 à 12:22:26
Mouais, dans ce cas le plus simple est de ne pas faire un tableau :
Tu utilises un DIV dans lequel tu mets tes A, les uns à la suites des autres avec les bonnes options CSS :
div#menu a { |
Et le code HTML :
<div id="menu"> |
Je te laisse adapter pour l'aspect cosmétique
Marsh Posté le 21-05-2003 à 12:44:52
j'avoue avoir un peu de mal a faire appliquer la feuille de style...
Ca créer bien les textes et les liens, mais aucune trace des boutons...
Marsh Posté le 21-05-2003 à 12:45:55
Voir la FAQ pour la déclaration des CSS...
Marsh Posté le 21-05-2003 à 13:02:27
j'ai trouvé !!!
grace a ta faq j'ai remarqué deux petites choses...
La premiere...c'est que je peux inclure les styles (ca évite de charger une page en plus )
La seconde c'est que j'avais une petite erreure au niveau des liens avec les images...
donc apres correction cela devient :
Code :
|
le changement de lien tenant la :
('navig/over3.jpg') était auparavant ('../navig/over3.jpg')
du coup...plus de bug
Merci beaucoup !!!
Marsh Posté le 21-05-2003 à 13:07:54
Plusieurs choses :
- Ton code reste quand même très lourd
- Ce n'est pas parce que tu définis une propriété "cursor: hand;" sur le <td> que le lien devient cliquable sur toute la cellule
- Il manque les unités à top et left pour le positionnement de ton tableau
- Pour le changement de style avec JS, défini plutot une classe pour l'état "survolé" de tes cellules et utilise this.className
Marsh Posté le 21-05-2003 à 13:16:09
gm_superstar a écrit : Plusieurs choses : |
Marsh Posté le 21-05-2003 à 13:27:45
bagu a écrit : Oui mais c le seul qui me donne le résultat que j'attend pour le moment |
Je t'ai donné une autre solution plus simple
bagu a écrit : effectivement...c'est plutot du au fait que les <td> soient dans les <a> |
Oui mais c'est interdit par la norme HTML de mettre un mettre un <td> dans un <a>. C'est ce qui posait problème à Mozilla d'ailleurs.
bagu a écrit : ben non...elle sont la précise ... |
Tu as écrit :
position: absolute; top: 10; left: 10; |
10 quoi ? pixels ? centimètres ? choucroutes ?
bagu a écrit : La j'ai du mal a te suivre...Je suis plus que débutant... |
Au lieu d'écrire 50 fois :
onMouseOver="this.style.background='url(navig/over2.jpg) no-repeat'; this.style.font='bold 8pt Verdana, Helvetica, Arial, sans-serif'" |
Tu crées une classe avec ces propriétés :
.menutdOver { |
(d'ailleurs on devrait pouvoir se dispenser de font-family, vu que c'est une propriété héritée des éléments supérieurs)
Puis ensuite dans ton <td>, tu te contentes d'un :
onmouseover="this.className='menutdOver';" |
Pareil pour onmouseout
Marsh Posté le 21-05-2003 à 14:09:58
je suis en train de tester ton exemple...pour l'instant ca donne :
Code :
|
Mais la, je me creuse la tete pour reproduire l'effet de survol...Je vais essaye de voir avec ton conseil :
Code :
|
je vais essayer de voir comment intégrer ca avec ta faq
Marsh Posté le 21-05-2003 à 14:26:09
je n'y arrive vraiment pas...peux tu m'aiguiller ?
je n'arrive pas a comprendre comment intégrer l'effet de survol...
Marsh Posté le 21-05-2003 à 14:48:07
Heu... je fatigue là... Oublie ce que je viens de dire. Il y a plus simple et sans JavaScript. Il faut utiliser la pseudo classe :hover.
Donc je reprends :
div#menu a { |
Et les liens sont tout simplement fait comme ça :
<a href="Page1.htm" target="mainFrame">Accueil</a> |
Voilà donc pas besoin de classe et de javascript
Et moi je vais prendre un café ça va me réveiller.
Marsh Posté le 21-05-2003 à 14:56:07
Ok...donc si j'ai bien suivi ca donne ca :
Code :
|
sauf que y'a deux problemes...
Le premier c'est que les boutons ne s'affichent que si la souris est passée par dessus...
Le second c'est que je n'arrive pas a "recentrer" les textes dans les boutons...
Marsh Posté le 21-05-2003 à 14:57:49
Laisse tomber tout ça j'ai viré mon précédent post qui parlait de ça c'était une solution bien trop compliquée.
Marsh Posté le 21-05-2003 à 15:03:39
effectivement c carrément plus simple... hover permet de remplacer onmouover et onmouseout donc ?
Il ne reste plus qu'un "détail"... le texte est "collé" en haut de la case...alors qu'il y a
text-align: center; |
J'avoue ne pas saisir pourquoi...
EDIT : je crois que c'est du a
text-decoration: none; |
qui, certes supprime la ligne, mais qui laisse le texte comme si la ligne y était encore...
Marsh Posté le 21-05-2003 à 15:13:34
bagu a écrit : Il ne reste plus qu'un "détail"... le texte est "collé" en haut de la case...alors qu'il y a
|
text-align ne s'occupe que de l'alignement horizontal, pas vertical.
bagu a écrit : EDIT : je crois que c'est du a
qui, certes supprime la ligne, mais qui laisse le texte comme si la ligne y était encore... |
Non plus. Text-decoration c'est pour empêcher le soulignement des liens qui le sont par défaut. Et comme tu n'avais pas souligné les liens sur ton site je l'ai mis...
Non pour le mettre ton texte au milieu il y a plusieurs solutions :
- soit tu définis un padding (marge intérieure) pour faire descendre le texte
padding-top: 4px; |
(et dans ce cas il faut réduire la hauteur d'autant pour garder une hauteur totale de 21px)
Mais cette solution risque de poser un problème avec IE 5.x (c'est contournable, mais c'est lourd)
- Soit tu définis une hauteur de ligne pour le texte assez grosse
line-height: 20px; |
(à ajuster bien sûr)
Bon pour être cohérent il faudrait que tu définisses la taille de ta police en pixels (px) plutôt qu'en points (pt)
Marsh Posté le 21-05-2003 à 15:29:40
impec...la deuxieme solution est la bonne...
Merci beaucoup....En plus, je suis en train de corriger mes pages avec CSE HTML Validator Lite v3.5
Y'avait un paquet d'erreur !
Merci encore pour tout...c kler que c beaucoup plus léger comme ca et mes pages seront enfin accessible sous linux
EDIT : Excuse moi de te déranger encore...mais connait tu une solution pour que lorsque l'affichage est inférieur a du 1024*768 les bouton restent accessibles...
Car dès que ca passe en 800*600 ou moins, les boutons s'empilent et du fait des frames, ceux du bas sont innaccessibles...
Marsh Posté le 21-05-2003 à 16:30:34
Ben tu fixes la taille du DIV qui contient les boutons
Marsh Posté le 21-05-2003 à 18:52:22
merci
EDIT : finalement j'ai juste agrandis la frame du haut pour qu'elle puisse acceuillir deux lignes...ca me permettra de rajouter des boutons
Marsh Posté le 21-05-2003 à 00:09:49
Bonsoir,
J'ai un bug sur mon menu dans ma page perso dont je n'arrive pas a me défaire !!!
Non seulement sur linux les bouton n'ouvrent pas les pages demandées...mais en plus, ils sont sujets a divers bugs graphiques...
Par exemple, ils ne s'affichent que si on passe la souris dessus....ou au contraire, ils disparaissent quand je met ma souris dessus...
Pouvez-vous m'aider ?
Style.css :
Code :
Début de mon fichier de menu :
Code :
Message édité par bagu le 21-05-2003 à 10:46:34