28173 sujets

CSS et mise en forme, CSS3

Bonjour à Tous,

J'ai un problême de Chaîne de Caractère continue c'est à dire
sans espace par exemple une adresse web un peu longue
qui dans mon DIV ne rentre évidemment pas et donc agrandit
la largeur de ce DIV.

Existe-t-il une solution pour que qqsoit la longueur d'un texte la taille du bloc reste vraiment fixe ?

Merci de vos réponses.
Sofinette.
Modifié par sofinette (27 Apr 2007 - 16:17)
Salut,

Comme je le disais dans un post ces derniers jours, pourquoi ne pas tout simplement éviter d'utiliser des liens trop longs ?

Ceux-ci proviennent en générales d'adresses url qui font appel à des paramètres en PHP en plus du nom de fichier (numéro d'article, numéro de page, langue, etc.)

Niveau accessibilité on y gagnerait car l'intitulé du lien car il est plus simple d'utiliser un lien explicite indiquant sur quoi débouche le lien, plutôt que sur une adresse relativement illisible. Et çà résoudrait ton problème de dépassement d'adresse de son conteneur Smiley cligne
Donc il n'y a pas de solution en CSS ?

Dans mon cas c'est vrai le DIV dans lequel est
mon lien est vraiment pas assez large donc
en effet l'adresse est souvent trop longue
même qd c'est une adresse simple sans php...

Si je n'ai pas d'autres solutions en effet je pense remplacer
toutes les adresses http de ce bloc par un "Voir le site Web"
et en effet mon pb sera réglé...

Mais je ne comprends toujours pas pourquoi un DIV à largeur fixe
s'élargit en fonction de son contenu...

Sofinette.
Il s'élargit seulement s'il ne peut pas couper un mot. Mais n'y a-t-il pas moyen de faire un div un peu plus large, ou une taille de police un peu plus petite? Surtout que ce div a l'air d'être justement prévu pour contenir des url.
Tu peux utiliser l'instruction CSS overflow:hidden; se pose ensuite un problème esthétique, l'adresse web sera de ce fait tronqué.
Ou sinon utilise la fonction php Wordwarp, très fonctionnelle
Modifié par MasterPingouin (27 Apr 2007 - 11:50)
sofinette a écrit :
Donc il n'y a pas de solution en CSS ?

En CSS non, il te faudra te tourner vers le PHP pour celà.
sofinette a écrit :
Mais je ne comprends toujours pas pourquoi un DIV à largeur fixe
s'élargit en fonction de son contenu...

Un div ou tout élément de type bloc à largeur fixe ne s'élargit pas en fonction de son contenu. Sauf peut-être avec Internet Explorer, dans certains cas (à vérifier), mais ce navigateur n'est pas une référence...

Tu n'aurais pas utilisé un tableau ? Pour le coup, les cellules de tableaux s'élargissent en fonction de leur contenu (du moins c'est leur comportement par défaut).
Le overflow:hidden fonctionne bien en effet
Bon d'accord l'adresse n'est plus visible en entier
mais déjà ça n'élargit pas le bloc.

J'en sais déjà plus qu'avant alors merci !
Florent V. a écrit :

Un div ou tout élément de type bloc à largeur fixe ne s'élargit pas en fonction de son contenu. Sauf peut-être avec Internet Explorer, dans certains cas (à vérifier), mais ce navigateur n'est pas une référence...


Et bien si dans le cas où on insère une chaîne
de caractère trop longue et non coupée...
Modifié par sofinette (27 Apr 2007 - 12:09)
Pour être exact, c'est le contenu qui dépasse du div et non le div qui s'aggrandit.

Et sinon je crois que tu peux signaler ton post comme Résolu
MasterPingouin a écrit :
l'overflow:hidden, n'est pas la solution, c'est une solution en demi-teinte, je te conseil forcement d'utiliser le php pour couper ton adresse en y ajoutant un truc du style [...] à la fin.

Exemple :

http://www.mondomaine.com/2007/04/27/cat01/trucmachin/bidule/monbidule.htm
http://www.mondomaine.com/2007/04/27/[...]


Pour l'instant j'ai utilisé overflow:hidden

En fait sur ton exemple les 2 liens ne s'affichent pas...
Quand on coupe l'adresse d'un site avec une césure en php
est-ce que l'adresse fonctionne toujours après ?