decalage lors d'un cliqué-glissé - HTML/CSS - Programmation
Marsh Posté le 18-03-2003 à 17:37:45
il me semble pas avoir ton problème avec internet explorer
Marsh Posté le 18-03-2003 à 17:41:58
reponse ultra rapide...merci
Re-essaye:
tu cliques du gris uni vers le dégradé (vers la droite).
je suis aussi sur explorer et mon image du dégradé se décuple...
Marsh Posté le 18-03-2003 à 17:43:01
Urd-sama a écrit : il me semble pas avoir ton problème avec internet explorer |
j'ai le meme soucis que lui sous IE 5.0
Marsh Posté le 18-03-2003 à 17:45:18
ah vi j'avais pas fait juste
il scroll sur ton image de fond de cette frame
Marsh Posté le 18-03-2003 à 17:47:36
autre chose: ca derange pas que ce soit un site "commercial" que je soumet parce que dans la partie graphisme, ils ont pas l'air d'accord.
Marsh Posté le 18-03-2003 à 17:47:46
je sais pas trop ou est le problème, mais pour aider j'ai repris le code de ta frame gauche, ou je suppose que le problème se cache:
Code :
|
edit: oops grillay
Marsh Posté le 18-03-2003 à 17:47:50
kameha a écrit : salut à tous, |
C'est tout à fait normal. La dimension du contenu de ta frame déborde de ta frame et comme tu as mis un scroll à no, ben tu retrouve le scroll avec la souris (en fait tu fais apparaître ce qui se trouve caché par ta frame centrale).
Maintenant, juste une question : Pourquoi avoir utilisé des frames dans ton cas?
Marsh Posté le 18-03-2003 à 17:49:23
kameha a écrit : autre chose: ca derange pas que ce soit un site "commercial" que je soumet parce que dans la partie graphisme, ils ont pas l'air d'accord. |
sur graphisme, c'est juste des copieurs/déposeurs, sorti de là, ya plus personne.
Si tu fais toi-même ton site et que tu éprouves des problèmes techniques, il est normal que tu viennes en parler.
Marsh Posté le 18-03-2003 à 17:56:48
Citation : Maintenant, juste une question : Pourquoi avoir utilisé des frames dans ton cas? |
parceque je trouve ça plus pratique.
La derniere fois, j'ai utilisé les modèles (librairie, .dwt...) sous dreamweaver, plus jamais. Trop de galère de mise à jour...
Et je trouve que c'est plus classe quand tu redimensionnes ta fenetre. La frame du bas reste bien toujours en bas. Ca fait que le menu du bas se retrouve pas a chaille quand le contenu de mas pages est enorme.
Marsh Posté le 18-03-2003 à 18:00:21
kameha a écrit : et il existe des solutions pour parer ça....?... |
Oui avec les CSS :
body { |
Pas besoin de tout ton bazard avec le tableau
Marsh Posté le 18-03-2003 à 18:01:00
Hermes le Messager a écrit : sur graphisme, c'est juste des copieurs/déposeurs, sorti de là, ya plus personne. |
Marsh Posté le 18-03-2003 à 18:03:19
gm_superstar: toujours vivant ...c'est pas la premiere fois que tu me viens en aide...cool.
Ca finit toujours avec des CSS mes problemes html.
Je vais essayer ça.merci
pareil pour la frame de gauche alors pour faire ça bien...?..
Marsh Posté le 18-03-2003 à 18:04:08
Ouaip, pareil à gauche (à adapter donc)
Marsh Posté le 18-03-2003 à 18:08:52
kameha a écrit : gm_superstar: toujours vivant ...c'est pas la premiere fois que tu me viens en aide...cool. |
Encore une fois, pas besoin de frames dans ton cas :
regardes cet exemple (copies le dans dream pour voir) :
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
<title>test tableau</title>
<style type="text/css" media="screen"><!--
body { text-align: center; margin: 0px }
.tableau { margin-right: auto; margin-left: auto; width: 600px; height: 100% }
.cellule1 { background-color: red; height: 100px }
.cellule2 { background-color: yellow }
.cellule3 { background-color: blue; height: 100px }
--></style>
</head>
<body>
<table class="tableau" cellspacing="0" cellpadding="0">
<tr>
<td class="cellule1">test</td>
</tr>
<tr>
<td class="cellule2">test</td>
</tr>
<tr>
<td class="cellule3">test</td>
</tr>
</table>
</body>
</html>
Je ne vois pas où tu auras des problèmes de maintenance en faisant comme cela. Il faut juste que tu sépares bien les CSS et le HTML.
Franchement, tu devrais te mettre un minimum au code quand même, surtout que je trouve que ce que tu fais est vraiment très joli. C'est bête de pas creuser un peu, surtout que c'est pas bien dûr. C'est une semaine ou deux de prise de tête, pas plus.
Marsh Posté le 18-03-2003 à 18:16:46
Bien sûr une solution avec un DIV est possible
Marsh Posté le 18-03-2003 à 18:18:30
gm_superstar a écrit : Bien sûr une solution avec un DIV est possible |
c clair, mais bon, on va finir par l'effrayer, et après il ira crier sur graphisme qu'on est tous devenus fous par ici avec nos divs. Autant le démarrer en douceur.
Marsh Posté le 18-03-2003 à 18:34:57
je sais, jsuis une merde en code.
Deja, je bosse avec dreamweaver: oldschoolhonteux.
Citation : regardes cet exemple (copies le dans dream pour voir) : |
halucinant. Je savais meme pas ke c'était possible sans les frames.
Mais comment faire quand il va falloir changer juste un liens dans le menu du haut par exemple et que 40 pages utiliserons ce menu du haut?
Marsh Posté le 18-03-2003 à 18:48:30
kameha a écrit : je sais, jsuis une merde en code.
|
Très simple, tu te mets au PHP, et tu apprends à faire des includes (2 heures montre en main).
Tu as ta page toujours la même avec le menu du haut et du bas. Et tu fais un bête include dans ta cellule du milieu.
Sinon, si tu veux le faire uniquement avec du HTML, rien ne t'empêche de faire une IFRAME.
Marsh Posté le 18-03-2003 à 18:58:00
Les iframes ont des problemes de comptatibilités je trouve (mas,PC,netscape,IE...), et on me demande de faire des choses comptatibles au max. C'est la toute la galere.
Par contre, l'histoire des includes et du PHP. Rien que les noms, ça claque!
Je connais un peu PHP, j'ai fait une formation de 2 jours .
De là à gerer un site entierement en PHP...
Citation : Tu as ta page toujours la même avec le menu du haut et du bas. |
Celle construite avec le code que tu m'avais filé?
Ce que je veux savoir c'est comment va se passer la mise a jour des menus? Est ce kil va falloir repasser toutes les pages quand je changerai un lien?
Excuse moi de pas tout comprendre mais je connais tellement peu de soluces pour contruire un site que j'en suis devenu ignorant...
Marsh Posté le 18-03-2003 à 19:12:42
kameha a écrit : Les iframes ont des problemes de comptatibilités je trouve (mas,PC,netscape,IE...), et on me demande de faire des choses comptatibles au max. C'est la toute la galere.
|
Ben justement le PHP sert à faire des sites gérables bcp plus facilement, surtout quand on a bcp de pages.
Puisque tu as l'air motivé et intéressé, voilà ce que je te conseille :
1) essayes de séparer le contenant du contenu. Pour cela, poses le maximum de caractéristiques "graphiques" dans les CSS et le minimum dans le HTML "pur". Chaque fois que tu veux faire un tableau par exemple, spécifie le fond, l'image de fond, la largeur, la longueur etc... dans une classe comme je l'ai fait sur l'exemple. Et testes bien sûr avec IE 5+, Mozilla 1+ et Opera 6+ c'est un bon équilibre.
2) Mets toi sérieusement au PHP en faisant les tutoriaux de phpdebutant.org qui sont très bien faits. Quand tu les domineras (1 semaine ou deux) tu en sera LARGEMENT assez pour faire ce dont je te parle, et tu verras que cela change la vie. C'est en effet 1000 fois plus facile de gérer un site en PHP qu'un site en HTML. Occupes-toi en priorité de l'apprentissage des tests conditionnels et des includes (ce dont tu te serviras pour ton site).
Pour te montrer comment marche les "include" afin de ne pas te laisser sur ta fin, voilà comment ça se passe.
1) Tu as une page index.php constituée d'un tableau comme sur l'exemple que je t'ai montré. La cellule du haut ne change pas, celle du bas non plus, et les deux ont des dimensions fixe.
La cellule du mileu elle doit s'adapter AUTANT que possible à son contenu.
2) Admettons que tes liens vers tes pages se trouvent dans la cellule du haut.
- Tu as <a href="index.php?lien=1">lien1</a>, <a href="index.php?lien=2">lien2</a>, <a href="index.php?lien=3">lien3</a> etc...
Dans ta cellule du milieu, tu testes en PHP la valeur de la variable $_GET['lien'].
if ($_GET['lien'] == 1){include"page1.php";} // Ce qui veut dire : si la variable "lien" qui a été passée dans l'adresse est égale à 1, alors inclure la page1.php.
else if ($_GET['lien'] == 2){include"page2.php";}
else if ($_GET['lien'] == 3){include"page3.php";}
etc...
Et voilà.
Ainsi, tu n'auras qu'à faire des pages qui seront incluses dans la première.
Marsh Posté le 19-03-2003 à 09:15:44
gm_superstar=
Citation : body { |
Juste une chose:
tu me dis de mettre ça en CSS en redefinissant la balise body de ma page.
Mais si je le met dans mon fichier CSS, il y a deja la balise body redefini pour mes pages de ma frame du milieu. Du coup ça fait des conflis. Faut-il que je recré un fichier .css ?
encore une question toujours 'plus haut toujours plus fort':
Comment on fait pour inclure des citations en nommant celui qui l'a dit?
Marsh Posté le 19-03-2003 à 09:35:23
Pour la première question :
Tu peux définir des classes :
.page1 {les propriétés etc... }
.page2 {les propriétés etc... }
Dans tes pages en HTML, tu mets :
<BODY class="page1">
Dans une autre page, tu mets <BODY class="page2"> etc...
Pour ta deuxième question, il faut cliquer sur ça :
Sinon, tu peux aussi à la main faire : [ quote ] blablabla [ /quote ] (sans les espaces).
Marsh Posté le 19-03-2003 à 09:53:18
voila ce ke j'ai dans mon .CSS:
Citation : |
Et dans ma leftframe.html:
Citation : <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
ca ne marche pas ...
Marsh Posté le 19-03-2003 à 09:53:59
pour preuve:
http://www.courchevel.com/ete/fr/frameset.html
Marsh Posté le 19-03-2003 à 10:18:35
Pas
.pagegauche |
Mais :
.pagegauche |
Marsh Posté le 19-03-2003 à 10:23:19
Tiens, j'ai fait une petite recherche sur ce cas, parce que je le trouve intéressant :
testez ça :
Code :
|
Compatible IE 5+ et Mozilla 1+ (netscape 6+). Pas compatible opera 6. Si vous avez opera 7, je vous demande de tester.
Regardez le div scrollable. Il n'y a pas de frame ni d'iframe, tout est dans la même page.
Marsh Posté le 19-03-2003 à 10:34:07
Hermes le Messager = c'est top ton code.....
Pas trop compris ce qu'était le div. Pour moi c'est une balise html de base.
gm_superstar = ca marche toujours pas.
http://www.courchevel.com/ete/fr/frameset.html
j'ai mis dans mon .css:
Citation : |
j'essaye de trouver, de faire des tests...mais rien ne fonctionne. La galère est dons de créer des class dans mon fichier .css .
Marsh Posté le 19-03-2003 à 10:38:36
kameha a écrit : Hermes le Messager = c'est top ton code.....
|
Essayes de redimensionner la page. Tu verras qu'une barre de scroll apparait dans la cellule du milieu. C'est à ça que sert le div que j'ai ajouté. On a l'impression d'avoir une Iframe, mais ya PAS de frame ni d'iframe. Ce qui fait que pour le référencement, ya plus de problème
Pour ton problème avec GM, je te conseille d'y aller progressivement. Utilises l'éditeur de css de dream et essayes les différentes propriétés en essayant de comprendre à quoi ça sert.
Pour déclarer une class, le principe est toujours le même. Dans les CSS, tu fais .nom_de_ta_class {propriétés séparées par un point virgule }
et dans ton fichier HTML, <ta balise class="nom_de_ta_class (sans le .)">
Donc dans ton cas : tu vas dans la page HTML concernée (ta frame) et tu fais <body class="pagegauche">
Où écris-tu tes CSS ? Dans un fichier externe, ou directement dans ta frame ?
Marsh Posté le 19-03-2003 à 10:45:36
Si ton fichier CSS est externe, n'oublies pas d'ajouter dans le head :
<link href="adresse_de_ton_fichier_css/nom_du_fichier.css" rel="stylesheet" media="screen">
Marsh Posté le 19-03-2003 à 10:53:00
le fichier .css est externe.
Citation : <link href="adresse_de_ton_fichier_css/nom_du_fichier.css" rel="stylesheet" media="screen"> |
ça je l'ai fait.
Dans dream, si je fais un style css 'seulement dans ce document', il m'écrit apperement le code dans ma page et pas dans mon fichier externe.
En fait je crois que ca marche ptetre, j'ai un bandeau gris (qui doit etre la couleur de fond) sur ma leftframe.html mais pas d'image et la couleur de fond ne prend pas toute la page
Marsh Posté le 19-03-2003 à 10:54:04
Citation : media="screen" |
ca par contre, c'est different...
je vais le changer
Marsh Posté le 19-03-2003 à 10:57:03
kameha a écrit : le fichier .css est externe.
|
Il va falloir à un moment donné ou à un autre que tu te débarasses de cette "merde" de dream.
Dreamweaver à 2 intérêts :
1) Pour celui qui ne sait rien faire : cela lui permet de faire des sites sans connaitre le HTML, les css etc...
2) Pour les gens qui travaillent sur des projets communs en entreprise via webdev.
Pour les gens qui ont atteind un niveau correct et qui travaillent seul, cela devient "un ralentisseur". Tu te bas contre un programme et non plus avec le code ou les véritables problèmes qui se posent
Pour en revenir à ton problème, remets ta page comme elle était avant et je vais resoudre ton problème.
Marsh Posté le 19-03-2003 à 11:01:16
ok je vais la remettre....
Pour l'histoire du code que tu as proposé:
pour info, ça ne marche sous MAC. Le scroll n'apparait pas et la page du milieu se supperpose sur celle du bas.
merci
Marsh Posté le 19-03-2003 à 11:01:56
kameha a écrit : ok je vais la remettre.... |
Quel navigateur et quelle version sur MAC ?
Marsh Posté le 19-03-2003 à 11:05:03
J'ai regardé ton problème. Il doit y avoir une erreur de chemin pour ton fichier CSS sur le link.
Marsh Posté le 19-03-2003 à 11:07:21
je l'ai remis tout comme avant:
http://www.courchevel.com/ete/fr/frameset.html
Marsh Posté le 19-03-2003 à 11:10:08
kameha a écrit : je l'ai remis tout comme avant: |
ok, je regarde...
Marsh Posté le 18-03-2003 à 17:36:18
salut à tous,
je bosse sur un site avec des frames:
http://www.courchevel.com/ete/fr/frameset.html
Si vous faites un cliqué-glissé vers la droite dans la partie grise foncé (frame de gauche), ca devient n'importe quoi. L'image se duplique.
Comment eviter ça???
Dans la frame de droite, ca le fait pas, par contre....
merci ben
Vince