28173 sujets

CSS et mise en forme, CSS3

Bonjour,

Bien qu'ayant recherché, je me pose toujours la question:

Y a-t-il un moyen fonctionnant sous Netscap/Mozilla/Explorer pour empêcher une div de dépasser sa largeur définié en CSS dans le cas d'un bloc de texte sans espaces, trop long ?

Exemple:

Hahahahahahihihihihihihii

Admettons que la largeur de ma div soit définie pour contenir la longueur du hahaha (sans les hihi).

Est-il possible donc d'arrêter l'affichage, et que la div ne s'agrandisse donc pas ?

Merci d'avance pour les réponses !
Ha et tant que j'y suis, mais j'avoue ne pas avoir cherché:

Pour une div destinée à ne rien "contenir" (Mais qui reste utile)

<div> </div> peut-il être remplacé par <div /> ? Je ne sais pas si la syntaxe existe.

Merci !

[Réponse: non]
Modifié par Tiret (10 Sep 2006 - 19:49)
Bonjour Tiret et bienvenue parmi nous, Smiley smile

Pour répondre à ta deuxième question, un conteneur est fait pour contenir du contenu !
Smiley lol

Donc, un élement div sans contenu : cela n'a aucun sens.

Certaine balise, comme <hr />, <br />, <img /> ne sont pas destinées à recevoir du contenu et obeissent, en xhtml, à cette règle syntaxique.
Modérateur
Hello,

Une div sans contenu peut servir à des éléments de mise en page supplémentaires quand même. Smiley cligne

... et pour la première question, il faut fixer la largeur de la div et ajouter overflow:hidden; mais bon... Je ne comprends pas vraiment dans quel cas, çà peut bien servir... Smiley sweatdrop Si on ne peut pas lire tout le mot, c'est pas gégé ton truc... Smiley rolleyes
koala64 a écrit :
Hello,

Une div sans contenu peut servir à des éléments de mise en page supplémentaires quand même. Smiley cligne


Tu veux dire qu'un div peut en contenir un autre, c'est à dire que l'ajout d'un div peut faciliter la mise en page.

Mais <div /> (au même titre que <hr />) j'ai un doute ...
Smiley cligne
Modérateur
Vero a écrit :


Tu veux dire qu'un div peut en contenir un autre, c'est à dire que l'ajout d'un div peut faciliter la mise en page.

Mais <div /> (au même titre que <hr />) j'ai un doute ...
Smiley cligne
Je voulais juste dire qu'on peut mettre <div id="too"></div> dans le body pour ajouter un background par exemple sans pour autant faire référence à la place qu'a cette div dans le code...

Sinon, ben je n'ai pas de doute sur <hr />... Smiley ravi

Tiens, à ce propos... En consultant le lien que vient de donner Laurent, une question m'est apparue... Si j'ajoute :

<!ELEMENT coucou EMPTY>
<!ATTLIST coucou
  %attrs;
  >

dans un complément de DTD, les navigateurs comprennent ou non ? J'ai un doute... Faudrait que j'essaye... Smiley confuse
Ah ! On devrait penser plus souvent à farfouiller dans blog and blues ...
Smiley lol
Modifié par Vero (10 Sep 2006 - 21:29)
koala64 a écrit :
Je voulais juste dire qu'on peut mettre <div id="too"></div> dans le body pour ajouter un background par exemple sans pour autant faire référence à la place qu'a cette div dans le code...


Oui, <div> </div> éventuellement, mais pas <div /> ...
Ceci est réservé aux balises empty, donc.
Bonsoir,
D'un autre côté ça reste valide et ne devrait poser des problèmes de compatibilité qu'avec Netscape 4 (aucun problème avec IE 4 en tout cas).

Mais bon, autant suivre les directives de compatibilité.
Mon dieu, mais c'est un sujet pour modérateur ou quoi ici ? Je trouve la concentration de modos assez inquiétante ! Smiley lol

koala64 a écrit :
Tiens, à ce propos... En consultant le lien que vient de donner Laurent, une question m'est apparue... Si j'ajoute :

<!ELEMENT coucou EMPTY>
<!ATTLIST coucou
  %attrs;
  >

dans un complément de DTD, les navigateurs comprennent ou non ? J'ai un doute... Faudrait que j'essaye... Smiley confuse

La question est : le navigateur récupère-t-il automatiquement la DTD, et saura-t-il gérer l'élément. Là franchement, j'ai un gros gros doute.
Mais je vais laisser les spécialistes répondre avant de dire trop de bêtises.
Smiley cligne
mpop a écrit :
Mon dieu, mais c'est un sujet pour modérateur ou quoi ici ? Je trouve la concentration de modos assez inquiétante ! Smiley lol


Oui : en dehors de quelques obstinés, dont les modérateurs, une partie du reste du forum s'occupe allègrement de détails obscurs de bordures qui dépassent et autres zigouigouis CSS, et l'autre se vautre dans le DHTML à peine amélioré sous couvert de DOM. Le tout se fichant à peu près totalement de l'interopérabilité.

(Je suis de bonne humeur ce matin, moi, tiens Smiley cligne )

mpop a écrit :

La question est : le navigateur récupère-t-il automatiquement la DTD


Rapidement et grossièrement: non. Beaucoup trop compliqué pour les navigateurs actuels, et de peu d'intérêt étant donné les limites inhérentes aux DTD.

Les navigateurs afficheront le <coucou>...</coucou> (pas parce qu'ils auront été voir ce que c'est, mais parce qu'ils ont été conçu pour afficher n'importe quoi en HTML), mais à par l'affichage ou la restitution en contenu anonyme, flop.
Modifié par Laurent Denis (11 Sep 2006 - 11:05)
koala64 a écrit :
Hello,

Une div sans contenu peut servir à des éléments de mise en page supplémentaires quand même. Smiley cligne

... et pour la première question, il faut fixer la largeur de la div et ajouter overflow:hidden; mais bon... Je ne comprends pas vraiment dans quel cas, çà peut bien servir... Smiley sweatdrop Si on ne peut pas lire tout le mot, c'est pas gégé ton truc... Smiley rolleyes



Dans le cas d'un texte récupéré dans une base, qui se coupe s'il dépasse un certain nombre de caractères: Si l'utilisateur utilise ctrl+molette pour agrandir le texte, ça peut être utile pour ne pas tout défigurer (interêt limité certes mais pas forcément idiot)

Enfin il existe peut être une autre méthode mais à défaut de la connaitre
... Smiley cligne

Et sinon ma div devait en effet "contenir" une zone juste faite pour la mise en page Smiley cligne

Merci pour les réponses ! (Ce forum semble être le meilleur forum que j'ai trouvé, pour la CSS du moins ! Bravo Smiley cligne )
Modérateur
a écrit :
Dans le cas d'un texte récupéré dans une base, qui se coupe s'il dépasse un certain nombre de caractères: Si l'utilisateur utilise ctrl+molette pour agrandir le texte, ça peut être utile pour ne pas tout défigurer (interêt limité certes mais pas forcément idiot)
S'il y a des espaces entre les mots, le texte passe à la ligne...

D'habitude ( lorsque les écritures restent dans le flux donc pas en positionnement absolu, fixe ou flottant ), le conteneur s'agrandit lorsque tu fixes la largeur du conteneur en px et pas d'indication de hauteur.

Le conteneur peut aussi s'adapter à la taille des écritures lorsque la largeur du conteneur est définit en em. ( pratique pour les designs élastiques Smiley smile )

A voir suivant l'orientation que tu as choisi.