| | koala01 | Posté le 05/12/2004 @ 08:16 | Astucien
4715 Messages
| Ce post est à la fois un "coup de gueule" et une demande de renseignements.
Je suis en train de réorganiser entierement mon site, tant du point de vue de l'interface que du point de vue de la validation du code HTML.
Il se fait que, pour des raisons (à peu près) évidente de facilité, je souhaite utiliser l'attribut et height de certaines balises (mais dans la CSS), exprimés en pourcentage, couplés à l'attribut "overflow:auto" (qui permet de garder des blocs d'information à la bonne taille en mettant des ascenceurs en cas de besoin
Sous Mozilla, la taille est parfaitement prise en compte et me fournit exactement le résultat recherché, c'est génial...
Par contre, dés que je passe sous IE, ca foire en grande partie.
Si la disposition est bonne (le coin supérieur droit des blocs se trouvent au bon endroit), par contre, hauteur exprimée en pourcentage ne semble vraiment pas au gout de IE.
Ce qui est d'autant plus frustrant qu'il semble supproter (ou du moins à peu de chose près) que les largeurs soient exprimées en pourcentage...
Alors, voici le coup de gueule:
MAIS QUAND DONC MICROSOFT SE DECIDERA-T-IL A RESPECTER LES NORMES???
et, accessoirement, la question:
Quelqu'un aurait-il une solution (javascript, php ou "divine"[clindoeil]) pour résoudre ce problème sans pour autant devoir me "taper" la réécriture des css en prenant en compte les différentes résolutions d'écran, car il commence à y en avoir quelques-unes, et que cela obligerait le visiteur à voir mon site en "full screen"[question][question]
Merci de votre patience [clindoeil]
| | |
| |
| Publicité |
|
| | koala01 | Posté le 05/12/2004 à 08:22 | Astucien
4715 Messages
| Une petite précision:
Il n'y a apparemment qu'avec la balise <div> que Internet Explorer ne supporte pas la hauteur exprimée en pourcentage...
Pas de bol, j'ai trois balises <div>, aucun tableau, aucun cadre (frame) dans toute ma page.
Et bien sur, ce sont les trois balises <div> qui prennent en charge l'apparence "générale" de la page[boom][boom][feroce] | | | | | nono21 | Posté le 05/12/2004 à 12:44 | Petit astucien
162 Messages
| | Message original par koala01
Alors, voici le coup de gueule:
MAIS QUAND DONC MICROSOFT SE DECIDERA-T-IL A RESPECTER LES NORMES???
et, accessoirement, la question:
Quelqu'un aurait-il une solution (javascript, php ou "divine"[clindoeil]) pour résoudre ce problème sans pour autant devoir me "taper" la réécriture des css en prenant en compte les différentes résolutions d'écran, car il commence à y en avoir quelques-unes, et que cela obligerait le visiteur à voir mon site en "full screen"[question][question]
Merci de votre patience [clindoeil]
|
Bonjour Koala01,
Tu peux essayer IE7, c'est un patch à base de javascript qui se place sur ton site et qui corrige les (nombreux [boom]) bugs de M$ IE.
va voir là :
http://dean.edwards.name/IE7/intro/
Mais il est vrai que si Micro$oft se décidait enfin à respecter les standards, la vie des webmasters en serait grandement simplifiée.
Bon courage. | | | | | koala01 | Posté le 05/12/2004 à 14:03 | Astucien
4715 Messages
| Malheureusement, le patch ne semble pas prendre la fonction en compte...
Je trouve personnellement honteux que ce soit aux webmaster qui essaient de respecter les normes à trouver un moyen pour que certains explorateurs daignent fonctionner... | | | | | ti_ouf | Posté le 05/12/2004 à 19:30 | Astucien
4788 Messages
| et avec une valeur absolue le probleme est il toujours present???
je sais qu'avec Ie il y a un probleme de centrage horizontal,
est que tes bloc sont bien centré???
| | | | | SIBELIUS | Posté le 05/12/2004 à 20:16 | Petit astucien
339 Messages
| | | | | | Quartzkyte | Posté le 05/12/2004 à 22:42 | Astucien
3398 Messages
| J'avais pour ma part, suite à l'absence de réponse dans un post ici, résolu le problème avec deux conteneurs :
- l'externe : hauteur fixe, centré
- l'interne avec overflow auto
[code]
.conteneur {
margin-left: 5px;
margin-right: 5px;
height: 595px;
background-color:#0000CC
text-align:center;
overflow: auto;
}
.contenu {
overflow: auto;
}[/code]
Et ça fonctionne sous les deux. | | | | | koala01 | Posté le 06/12/2004 à 02:45 | Astucien
4715 Messages
| Alors,
Quartzkyte,ti_ouf==> le problème, avec des valeur absolue, se situe en ce point (que ce soit pour un conteneur ou un contenu
1- Ca va ajuster la hauteur pour une résolution bien précise, sans doute en plein écran, et va provoquer l'apparaition d'un ascenceur vertical si la personne utilise une résolution inférieure...
Du coup, on tombe dans le problème de devoir prévoir une feuille de style pour chaque résolution et de pévoir une solution de détermination de la résolution..==>beeeeeepppmauvaise réponse, rejeté...
Merci d'avoir essayé[bigsmile]...try again[clindoeil]
SIBELIUS==> le lien que tu m'a fourni m'a mis sur la voie...
Je n'aurais jamais pensé à mettre un attribut height pour body ou pour html ...
Avec des valeurs de 100%, je me suis néanmoins retrouvé avec mes trois div, certe mise à la bonne taille, mais avec un ascenceur qui chapeaute le tout...
Cétait embêtant...
En rajoutant l'attribut overflow: hidden à html, le problème a été résolu sur les deux navigateurs (le lien ne parlait pas de overflow hidden[clindoeil])
Vérification faite auprès du W3C, les validateurs ne semblent pas s'offusquer de voir la définition de html et d'y voir les attribut overflow et height.
Mon problème est donc parfaitement résolu...
Cependant, reste le coup de gueule auquel je convie tout le monde à donner son avis... je n'indiquerai donc pas résolu sur le sujet [clindoeil]... | | | | | koala01 | Posté le 06/12/2004 à 03:56 | Astucien
4715 Messages
| Notez, au passage, que ce n'est pas le seul problème:
Quand vous déterminez une image de fond, non répétée et centrée dans un conteneur autre que body (dans un div, dirons nous), sous Mozilla, cette image de fond est fixe, alors qu'elle bouge avec l'assenceur sous IE (par défaut)
Si l'on ajoute backgroundattachment:fixed dans le conteneur, l'image est alors bien fixe avec les deux navigateurs, mais centrée, non plus dans le conteneur, mais d'après body...
Mettre le background-attachment dans body ne modifie pas le comportement de l'image de fond du conteneur, ni dans l'un ni dans l'autre...
Mais, là, je ne sais pas déterminer quel navigateut beugue... Modifié par koala01 le 06/12/2004 03:59 | | | | | ti_ouf | Posté le 06/12/2004 à 20:42 | Astucien
4788 Messages
| ok ok ok [chinois]
Mais est ce que le probleme existait toujours avec une valeur absolue???
je sais que l'absolue n'est pas auto configurable selon la configuration cliente...
Pour moi je pense qu'on aurra pas mal de soucis d'interpretation de IE puisqu'il est un navigateur qui est tres souple sur le codage mais qui lorsque celui ci est normalisé,il deraille...
lol
| | | | | koala01 | Posté le 07/12/2004 à 00:16 | Astucien
4715 Messages
| En valeur absolue, tu tombes sur quelques problèmes mineurs (plutot dus à la taille de la barre d'outils, à la présence d'onglets...) mais elle est néanmoins acceptée. (la version actuelle de mon site est codée en valeur absolue)
Mais il faut avouer que:
-Une page "tunnel" pour récupérer la hauteur de page, c'est pas le top
-Après cette page, on a deux solutions, mais chacune a ses inconvéniants:
1-faire une partie pour chaque résolution envisagée, au risque d'en oublier une (et là...big problème) mais ca multiplie le poids total des fichiers (chez l'hébergeur, d'abord, à transférer ensuite... classé par "désagrément" et non par ordre chronologique)
2-(solution que j'ai utilisée) ne créer que les CSS, transmettre la hauteur de la page (et plutot, la hauteur de l'écran en pixel) de page en page (5 css étant quand meme moins lourdes que 5 fois tout le site, meme si on peut ne pas mettre 5 fois les images) et demander au serveur d'utiliser cette hauteur pour déterminer la css à utiliser et penser à la faire réinjecter dans tous les liens (on pourrait utiliser une variable de session, mais elle devrait quand meme etre transmise par l'url, ou un cookie, mais il risque encore d'être refusé par le visiteur)
Le problème apparait alors quand on appelle un CGI(entre autre) fournis par l'hébergeur, et qui n'a pas prévu que le CGI te renvoie une valeur (les form2mail de free, par exemple), avec le risque énorme de "perdre" la valeur de la hauteur d'écran au passage.
Avoir la valeur relative (en pourcentage) permet d'éviter tous ces écueils, et permet meme au visiteur de ne pas etre obligé de travailler en mode "full screen" pour profiter pleinement de ton site.
Et comme la solution existe...
Ma foi, pourquoi s'en priver [question] | | | | | ti_ouf | Posté le 08/12/2004 à 22:04 | Astucien
4788 Messages
| En tout cas j'aurrais appris pas mal de trucs grâce a toi Koala
merki | | | | | koala01 | Posté le 08/12/2004 à 23:03 | Astucien
4715 Messages
| Que t'ai-je appris que tu ignorait, donc[question] | | | | | ti_ouf | Posté le 09/12/2004 à 18:13 | Astucien
4788 Messages
| hooo
ça se compte pas [bigsmile]
non c'est vrai que j'ai appris pas mal de choss grace a toi,que ce soit de la définition propre,ou bien même des solutions ou alternatives.
Thank U | | | | | ti_ouf | Posté le 12/12/2004 à 19:29 | Astucien
4788 Messages
| up | | | | | Guepi | Posté le 25/01/2005 à 23:15 | Petit astucien
2 Messages
| pour info :
sur Netscape/Mozilla :
[code]hauteur = window.innerHeight;
largeur = window.innerWidth;[/code]
sur Internet Explorer :
[code]hauteur = document.body.clientHeight;
largeur = document.body.clientWidth;[/code]
ce qui permet de positionner correctement un élément en fonction de la taille de la fenêtre utile du client (je ne sais pas si les "barres" sont gérées dans la variable "document.body.clientHeight"ou dans la variable "document.body.offsetHeight" ).
Voilà. Bon courage !
PS : je suis normalement à la recherche d'un site de pétition contre les sites web qui sont fait uniquement pour Internet Explorer (les "site optimisé pour Internet Explorer" ou "Best viewed with Internet Explorer"). Si jamais vous avez l'adresse...
| | | | | koala01 | Posté le 25/01/2005 à 23:26 | Astucien
4715 Messages
| Guepi a écrit :
pour info :
sur Netscape/Mozilla :
[code]hauteur = window.innerHeight;
largeur = window.innerWidth;[/code]
sur Internet Explorer :
[code]hauteur = document.body.clientHeight;
largeur = document.body.clientWidth;[/code]
ce qui permet de positionner correctement un élément en fonction de la taille de la fenêtre utile du client (je ne sais pas si les "barres" sont gérées dans la variable "document.body.clientHeight"ou dans la variable "document.body.offsetHeight" ).
|
C'est pas mal, mais ca utilise le javascript, et le but de mon travail (et de mon coup de gueule, d'ailleurs) est l'utilisation exclusive des CSS ...
Cette astuce est donc "hors sujet"[clindoeil]
merci [clindoeil]
Si on en trouve une, on la signalera, sinon, on en créera une [clindoeil] | | | | | can93 | Posté le 25/01/2005 à 23:59 | Astucien
1467 Messages
| Moi, moi, moi !!
J'ai une solution !
Il suffirait de faire de la pub de Firefox tout autour de soi, et je ne pas vous le dire le nombre de personnes que j'ai converties a Firefox, tellement il y'en a !!
Mais bon, cela reste assez faible comme solution... | | | | | koala01 | Posté le 26/01/2005 à 01:42 | Astucien
4715 Messages
| can93 a écrit :
Moi, moi, moi !!
J'ai une solution !
Il suffirait de faire de la pub de Firefox tout autour de soi, et je ne pas vous le dire le nombre de personnes que j'ai converties a Firefox, tellement il y'en a !!
Mais bon, cela reste assez faible comme solution...
|
Ho, mais ca, ca fait déjà un bail que je m'y emploie aussi...
Et, pour tout dire, j'arrive meme tout doucement à convaincre l'un des profs que j'ai dans le cadre de mes cours d'informatique que linux n'a finalement pas grand chose à envier à windows, surtout quand on voit ce que nous réserve la prochaine version de windows (j'ai nommé l'honnis palladium) | | | | | ti_ouf | Posté le 26/01/2005 à 09:49 | Astucien
4788 Messages
| can93 a écrit :
Moi, moi, moi !!
J'ai une solution !
Il suffirait de faire de la pub de Firefox tout autour de soi, et je ne pas vous le dire le nombre de personnes que j'ai converties a Firefox, tellement il y'en a !!
Mais bon, cela reste assez faible comme solution...
|
ouai mais les gars,si tout le monde passe sous Mozilla, les problemes arriveront a coup sur avec ce navigateur!!
N'oublions pas que nous sommes a beaucoup plus protégé en terme de securité avec Mozilla que IE,du simple fait de la consommation des utilisateurs!!!!
En terme maintenant de normes!!!je ne serais pas quoi dire!!
Ie est hyper laxiste,tu commences en vérifiant ton ite sur IE,tu y arrive a coup sur!!! bonne chose???c'est du moins encourageant pour le newbies!!!
Si il a la poisse de regarder son résultat sous Mozilla il va déchanter.
au bout du compte IE est bien pour le novice qui ne connait que IE!
Mais pour les autres,ceux qui en connaissent un peu plus,IE est un boulet,parce qu'on a beau faire selon la norme il trouvera moyen de ne pas interpreter correctement. | | | | | can93 | Posté le 26/01/2005 à 12:08 | Astucien
1467 Messages
| ti_ouf a écrit :
can93 a écrit :
Moi, moi, moi !!
J'ai une solution !
Il suffirait de faire de la pub de Firefox tout autour de soi, et je ne pas vous le dire le nombre de personnes que j'ai converties a Firefox, tellement il y'en a !!
Mais bon, cela reste assez faible comme solution...
|
ouai mais les gars,si tout le monde passe sous Mozilla, les problemes arriveront a coup sur avec ce navigateur!!
N'oublions pas que nous sommes a beaucoup plus protégé en terme de securité avec Mozilla que IE,du simple fait de la consommation des utilisateurs!!!!
En terme maintenant de normes!!!je ne serais pas quoi dire!!
Ie est hyper laxiste,tu commences en vérifiant ton ite sur IE,tu y arrive a coup sur!!! bonne chose???c'est du moins encourageant pour le newbies!!!
Si il a la poisse de regarder son résultat sous Mozilla il va déchanter.
au bout du compte IE est bien pour le novice qui ne connait que IE!
Mais pour les autres,ceux qui en connaissent un peu plus,IE est un boulet,parce qu'on a beau faire selon la norme il trouvera moyen de ne pas interpreter correctement.
|
Ah ça oui...
Pfff j'ai passé je ne sais pas combien de temps a changer les CSS a cause de IE [colere]
Bon, bin dans ce cas, on n'a qu'a tous faire notre site seulement correctement affichable dans Firefox, et vu que des sites sont compatibles IE et Firefox, on n'a qu'a virer la comptabilité IE, les visiteurs seront forcés de decouvrir Mozilla du coup...
Je sais, je reve trop [bigsmile] | | | | | ti_ouf | Posté le 26/01/2005 à 20:07 | Astucien
4788 Messages
| oui je crois aussi [bigsmile]
a moins qu'on fasse un Super site de ouf, et qu'on ne puisse se passer de notre site....
bref 1 rêve quoi!! | | | | | Guepi | Posté le 27/01/2005 à 00:38 | Petit astucien
2 Messages
| Rendre le site de Microsoft respectueux des standards W3C et visualisable uniquement sur Firefox... LOL ! | | | |
| | Haut de la page |
| | Inscrivez-vous ! |
- Posez vos questions
- Résolvez vos problèmes
- Aidez les autres
- Participez et créez vos discussions
- Dialoguez en privé avec d'autres membres
- Suivez vos sujets préférés
- Affichez les signatures des membres
|
|