IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mise en page CSS Discussion :

Mise en page sans les div ?


Sujet :

CSS

  1. #1
    Membre averti
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2003
    Messages
    302
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2003
    Messages : 302
    Points : 316
    Points
    316
    Par défaut Mise en page sans les div ?
    Salutations,

    J'aimerais savoir si ce que je pense est vrai. Voici ce que je pense :

    Quand on écrit une page XHTML, on utilise uniquement les balises de contenu (Hx, P, UL, OL, LI, INS, EM, STRONG, BLOCKQUOTE etc). Ensuite, à l'aide de CSS, on peut changer à notre souhait la présentation de cette page XHTML.

    Or, dans les quelques exemples de pages que j'ai vu, il n'y en a pas une seul qui peut se passer de div pour placer ses éléments, souvent, dans le but d'afficher la page correctement (j'ai dit "correctement", pas "exactement pareil") sur différents navigateurs.

    Ma question est donc la suivante : peut-on faire une jolie page web sans DIV, et qui plus est qui s'affiche sans se casser la gueule sur des navigateurs différents ? si c'est trop dur, on peut laisser tomber IE6 si c'est vraiment lui qui gêne.

    Ne me demandez pas de définir le mot "jolie". C'est un joker qui vous pouvez définir à votre souhait.

    Pour ceux qui veulent répondre : as-tu un problème avec les DIV ? c'est OK d'utiliser des DIV dans une page XHTML, quand c'est à bon escient.

    Je veux répondre : à partir du moment où on met des DIV, c'est forcément pour de la mise en page, et dès qu'on voudra restyler la page, il faudra réécrire le code XHTML pour changer la dispositions des éléments XHTML dans ces DIV. Or, le CSS a été créé justement pour éviter de réécrire le code HTML a chaque fois qu'on veut changer la présentation de la page.

  2. #2
    Membre confirmé Avatar de kohsaka
    Homme Profil pro
    Intégrateur HTML / Developpeur .NET
    Inscrit en
    Janvier 2007
    Messages
    383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Intégrateur HTML / Developpeur .NET

    Informations forums :
    Inscription : Janvier 2007
    Messages : 383
    Points : 469
    Points
    469
    Par défaut
    Tu peux tout autant styliser un div que les balises que tu as cité précédemment.

    La balise div, c'est la même chose que la balise p, sauf que cette dernière ne peut pas contenir d'autres éléments de type bloc.

    De toute manière, ce que tu énonces n'est pas vrai. On ne peut pas créer 2 pages radicalement différentes juste en modifiant le CSS. Tu auras forcement besoin de réorganiser certaines parties de code. Tu pourras récupérer certains bloc de ton ancienne intégration, mais ca s'arrête la.

    En l'état actuel des choses, le css ne permet pas de tout modifier indépendamment du html à moins d'avoir une page vraiment basique et encore.

  3. #3
    Membre averti
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2003
    Messages
    302
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2003
    Messages : 302
    Points : 316
    Points
    316
    Par défaut
    Arriver à ça c'est déjà pas mal pour moi. Le problème c'est qu'il y a des divs partout partout partout...

  4. #4
    Membre régulier
    Inscrit en
    Août 2009
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 71
    Points : 89
    Points
    89
    Par défaut
    Citation Envoyé par kohsaka Voir le message
    La balise div, c'est la même chose que la balise p, sauf que cette dernière ne peut pas contenir d'autres éléments de type bloc.
    Objection votre honneur ! La balise p a un sens sémantique précis que n'a pas div.

    Quant à CSSZenGarden, ne pas oublier le but de ce site : celui de montrer que l'on peut faire des design magnifiques juste avec les CSS contrairement à des idées répandues chez certains designers.
    Donc, oui, il y a beaucoup de div, mais c'est pour permettre la multiplicité des design.
    Par ailleurs, le code est quand même sémantiquement correct.

    Vous avez raison yacine en disant que le code doit d'abord être constitué de balises sémantiques. Trop de webmestres l'oublient en ne mettant que des div...
    Cela dit, un nombre de div raisonnable et judicieux permet de mettre en forme en évitant les tableaux, et permet aussi de modifier son design sans changer de code.

    C'est comme beaucoup de bonnes choses : il faut juste savoir ne pas en abuser

  5. #5
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,


    Les <div> permettent également de définir des zones ou sections afin de leurs donner un style bien précis. HTML5 devrait améliorer cela en apportant de nouvelle balise sémantique (<header>, <footer>, <article>, <section>, <aside>, ...).


    Enfin l'empilement de <div> permet de passer outre certaines limitations des CSS, comme par exemple l'utilisation de plusieurs images de fond.
    Les CSS3 devrait changer cela grâce aux multiples possibilités qui seront offerte (multiple-background, coin arrondi, bordure en image, effet d'ombrage, etc.)


    a++

  6. #6
    Membre confirmé Avatar de kohsaka
    Homme Profil pro
    Intégrateur HTML / Developpeur .NET
    Inscrit en
    Janvier 2007
    Messages
    383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Intégrateur HTML / Developpeur .NET

    Informations forums :
    Inscription : Janvier 2007
    Messages : 383
    Points : 469
    Points
    469
    Par défaut
    Citation Envoyé par cssman Voir le message
    Objection votre honneur ! La balise p a un sens sémantique précis que n'a pas div.
    cela va sans dire maitre capello
    mais simplifions le problème.

  7. #7
    Rédacteur
    Avatar de Macmillenium
    Homme Profil pro
    Développeur front-end
    Inscrit en
    Mars 2008
    Messages
    2 333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur front-end
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2008
    Messages : 2 333
    Points : 3 747
    Points
    3 747
    Par défaut
    Bonjour,

    Citation Envoyé par yacinechaouche Voir le message
    Or, dans les quelques exemples de pages que j'ai vu, il n'y en a pas une seul qui peut se passer de div pour placer ses éléments
    DIV et SPAN sont des éléments neutres qui peuvent être utilisés pour des fins purement graphiques et sans aucune valeur sémantique :
    Citation Envoyé par HTML4
    Les éléments DIV et SPAN, en conjonction avec les attributs id et class, offrent un mécanisme générique qui rajoute de la structure aux documents. Ces éléments définissent le contenu comme étant en-ligne (SPAN) ou de bloc (DIV) mais n'imposent aucune autre expression de présentation sur le contenu. Ainsi, les auteurs peuvent utiliser ceux-ci en conjonction avec les feuilles de style, l'attribut lang, etc., pour exploiter HTML selon leurs besoins et leurs goûts propres.
    D'un autre coté, je trouve qu'il est ridicule de vouloir se passer d'un élément indispensable pour la mise en page.

    Citation Envoyé par yacinechaouche Voir le message
    souvent, dans le but d'afficher la page correctement (j'ai dit "correctement", pas "exactement pareil") sur différents navigateurs.
    [...]
    Ma question est donc la suivante : peut-on faire une jolie page web sans DIV, et qui plus est qui s'affiche sans se casser la gueule sur des navigateurs différents ? si c'est trop dur, on peut laisser tomber IE6 si c'est vraiment lui qui gêne.
    Non, absolument pas, le choix des éléments n'a pas de rapport direct avec le rendu des navigateurs, ce sont souvent les styles par défaut et les niveaux des implémentations CSS (et encore Haslayout (mécanisme propre à IE7-) qui font la différence.
    Ne confonds pas tout, Yasine


    Citation Envoyé par yacinechaouche Voir le message
    Je veux répondre : à partir du moment où on met des DIV, c'est forcément pour de la mise en page, et dès qu'on voudra restyler la page, il faudra réécrire le code XHTML pour changer la dispositions des éléments XHTML dans ces DIV. Or, le CSS a été créé justement pour éviter de réécrire le code HTML a chaque fois qu'on veut changer la présentation de la page.
    Tout dépend de tes compétences et de ton niveau d'expérience, en général un intégrateur expérimenté devrait être en mesure d'écrire un code modulaire et réutilisable, ensuite en fonction de la complexité du design tu peux décider s'il est nécessaire de réécrire une partie ou l'intégralité du code.

    Citation Envoyé par cssman Voir le message
    Objection votre honneur ! La balise p a un sens sémantique précis que n'a pas div.
    L'élément P peut avoir plusieurs sens sémantique, HTML 5 le définit également comme élément générique, par exemple :
    • Un simple paragraphe :
    • Un sous titre ;
    • Un baseline ;
    • Ou tout simplement pour bénéficier des marges par défaut en cas de CSS désactivé.

  8. #8
    Membre averti
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2003
    Messages
    302
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2003
    Messages : 302
    Points : 316
    Points
    316
    Par défaut
    Merci à tous pour vos réponses. Je vois maintenant que j'avais eu de fausses pistes comme : "Tout doit être sémantique quand on écrit du XHTML" ou encore "Le CSS permet de restyler une page sans toucher au (X)HTML", ou encore "C'est mal d'utiliser les divs" .

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. mise en page avec les div
    Par wind_vinch dans le forum Mise en page CSS
    Réponses: 7
    Dernier message: 26/09/2007, 19h10
  2. vb6 + charger des infos ds des pages sans les afficher
    Par mqsi dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 14/11/2006, 09h06
  3. [W3C] Mise en page html avec div ou tables selon vous ?
    Par zais_ethael dans le forum Balisage (X)HTML et validation W3C
    Réponses: 15
    Dernier message: 19/10/2006, 16h34
  4. Pb de mise en page avec les états
    Par clov dans le forum IHM
    Réponses: 2
    Dernier message: 19/07/2006, 08h05
  5. largeur de la page web - mise en page sans scroll
    Par Pepito dans le forum Webdesign & Ergonomie
    Réponses: 5
    Dernier message: 24/07/2005, 01h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo