Bonjour à tous,
j'essaie de faire en sorte que mon site s'adapte à une grande majorités des résolutions. Je code donc en pourcents. Le problème vient du fait que je n'arrive pas à mettre des pourcents pour le letter spacing, et que mon header ne se redimensionne pas bien, même avec des pourcentages. Je vous laisse juger : jp-lebars.netne.net

Merci d'avance pour vos réponses,
Elouan
Modifié par elouan (09 Jul 2012 - 21:00)
Modérateur
EDIT RE-EDIT et RE-RE-EDIT

Bonsoir !

Tout d'abord tu devrais mettre une taille max à ton site... (sur un 24' j'ai l'impression d’être a Rolland Garros quand je lis un truc) Entre autre je te conseille de lire des tuto comme : http://www.alsacreations.com/tuto/lire/547-faire-un-site-pour-toutes-les-resolutions.html

Le problème de ton header vient de ton image... pourquoi mettre une image noir de 1920px ? c'est destiné a être une autre image ou a rester noir ?

Et le letter-spacing... pourquoi vouloir le modifier ?
Modifié par _laurent (19 Jun 2012 - 18:00)
Bonsoir,
merci beaucoup pour ta réponse. Smiley biggrin

Il y a certaines choses que je n'ai pas bien saisis : que veux-tu dire par "mettre une taille max à mon site" ?
Merci pour le lien, que j'avais déjà consulté.
Mon header n'est pas destiné à être une autre image, juste à rester un bloc noir. Je me suis dit que sa taille importait peu puisqu'elle allait être redimensionner avec le .css.
Et pour le letter-spacing, je ne veux pas le modifier, je veux qu'il s'adapte à toute les résolutions.
Administrateur
Bonjour,

Je pense que _laurent te proposait de fixer une largeur maximale à tes pages. Comme ici un peu moins de 1024px même si le moniteur fait 1920px de large.
Sauf que ton site est/sera un site de photographies et de peintures donc bon peut-être pas Smiley smile

Par contre pour la sections écrits, oui : lire un texte occupant une seule colonne sur une feuille A3 en mode paysage ne serait pas des plus agréables par exemple. Smiley ravi Quoique CSS3 propose le Multi-Column et que ça commence à être bien supporté ... (pour IE<10 il y a un bout de JavaScript qui fonctionne bien tant qu'on le lance 1 fois et pas 200 fois sur la même page Smiley confused )

letter-spacing > "les mots sont séparés par des espaces", pas les lettres d'un mot ... Je suis en 1024 et je trouve déjà pas ça lisible, qu'est-ce que ça donne en 1680 ou 1920 ?

EDIT: ah attention, l'unité % ne se réfère pas du tout à la même chose pour le texte et pour des dimensions de boîte ! C'est plus clair avec font-size: 1em (taille de texte du parent x1, aucun changement) et width: 100% (la même largeur que celle du parent ... à laquelle il faut éventuellement ajouter padding et bordures donc plus de 100% au final mais c'est hors-sujet ici)
Modifié par Felipe (19 Jun 2012 - 23:11)
Modérateur
Felipe a vu clair dans mon jeu ! Smiley ravi Mais c'est vrai que pour une site d'art/photo ca peut etre intéressant de laisser une largeur a 100% tout le temps... a voir car pour moi la photo de fond est un peu floue la en plein écran...


Pour ce qui est de ton header ce qui te posait problème a la base. Oublie l'image noire de 1920px pour un fond, css fait ca très bien avec
background-color:#000000;

AU niveau du HTML tu as une structure comme ca :
<header>
                <div id="header">
                    <img src="ressources/header_fond.jpg" alt="en-tête" id="header" />
		</div>
</header>   /*sous firebug header est bien fermé mais quand je regarde le code source il y a une fermeture de div à la place de la fermeture du header, a vérifier*/
<nav>
		<div id="entete">
                        /* [...] */
		</div>
</nav>


Tu te compliques la vie je trouve. Déjà un div sert principalement à regrouper plusieurs éléments alors mettre seulement une image dans un div est un peu inutile, autant coller le #id a ton image et la placer directement.

Outre cela tu peux regrouper ton menu et le header. En fait ici ton header n'est que le fond de ton nav...
Pour le menu je te conseille de suivre ce tuto :
http://www.alsacreations.com/tuto/lire/574-Creer-des-menus-simples-en-CSS.html
qui remplacera tes <div> <a href> et <img> assez simplement et proprement par une liste. (d’ailleurs ici aussi, utiliser une image d'un trait blanc peut très bien se faire directement en css via les "border-")

Donc en gros tu n'auras plus que :
<header>
                /*la a voir ce que t'y met*/
</header>   
<nav>
		<ul id="menu">
                        /* [...] */
		</ul>
</nav>

Et nav aura dans son css un
width:100%;
background-color:#000000;

Vu que ton menu est dans nav, lorsque les titre seront décalé a la ligne en dessous par manque de place, nav prendra la bonne hauteur... et avec un fond noir Smiley smile

J’espère que ça aura au moins répondu en partie a tes attentes...
Bonsoir,
je te remercie pour ta réponse, qui m'a bien aidée. Il me reste cependant quelques questions : comme tu peux le voir sur jp-lebars.netne.net, le fond noir de nav ne colle pas au haut et au bords de la page. --> EDIT : RESOLU
Je voudrais aussi savoir si je peux modifier la hauteur de la border (j'ai bien chercher et je n'ai rien trouvé sur internet). Dernière question, tu me dit que
a écrit :
Vu que ton menu est dans nav, lorsque les titre seront décalé a la ligne en dessous par manque de place, nav prendra la bonne hauteur... et avec un fond noir

Je ne veux justement pas que les titres soient décalés à la ligne en dessous. Il y à moyen de faire autrement ?

Je te remercie,
Elouann
Modifié par elouan (24 Jun 2012 - 20:21)
Bonsoir,


Pour que ton menu soit collé en haut, applique au body un margin de 0px.

Tu ne veux pas que les titres soient décalés en dessous, mais tu fais que ça s'adapte à différentes résolutions... c'est contradictoire, non ?
Merci pour ta réponse. Justement, je préférerais que la taille du header s'adapte, et non pas que les liens passent dessous.
Exactement. Et d'après ce que j'ai lu, il faut le faire avec un JavaScript. Mais j'essaie de faire mon site sans.

Y aurait-il une autre possibilités ?
J'avais déjà commencer à faire des feuilles de styles différentes en fonction de la résolution de l'utilisateur avec les media queries, mais ce n'est pas la solution qui me convient.
Modérateur
Bonjour Elouan !

Pourquoi les média-queries ne te conviennent pas ? C'est pourtant la meilleure solution je pense.
Les utilisateurs ne modifie quasiment jamais la taille de la fenêtre. Elle a une taille (souvent plein écran) et ils naviguent dessus. Donc le fait que ça s'adapte en temps réel a chaque pixel lorsqu'on bouge la taille de la fenêtre va être lourd et particulièrement inutile a mon avis.

Bonne journée Smiley smile
Modifié par _laurent (26 Jun 2012 - 10:04)
Bonjour,
effectivement les media-queries sont très pratiques. Je vais donc procéder ainsi, et merci beaucoup pour ta réponse.