Comment insérer un espace insécable & nbsp; dans une page JSF?


Réponses:


175

cela fonctionnera

<h:outputText value="&#160;" />

5
Pourquoi est-ce <h:outputText>nécessaire?
alexander

En effet, utiliser les numéros HTML et pas d'autres raccourcis html est la voie à suivre.
Dnl

50

Mettre le numéro HTML directement a fait l'affaire pour moi:

&#160;

Oh, je veux juste donner la réponse maintenant. Heureux, je n'ai pas supervisé le vôtre.
alexander

18

Si vous utilisez la bibliothèque RichFaces, vous pouvez également utiliser la balise rich: spacer qui ajoutera une image "invisible" avec une longueur et une hauteur données. Habituellement beaucoup plus facile et plus joli que d'ajouter des tonnes de nbsp ;.

Là où vous voulez que votre espace vous montre, ajoutez simplement:

<rich:spacer height="1" width="2" />

+1 bien que cela n'ait pas été exactement demandé ici, mais votre réponse m'a été utile (en ce qui concerne le titre)
stacker

5
même ici, ce tag existe aussi dans PrimeFaces:<p:spacer />
Daniel Szalay

9

Vous pouvez également utiliser primefaces <p:spacer width="10" height="10" />


6

Finalement, vous pouvez essayer celui-ci, si la simple utilisation &nbsp;échoue ...

<h:outputText value="& nbsp;" escape="false"/>

(comme Tom, j'ai ajouté un espace entre &et nbsp;)


Je pense que la fuite est si importante que cela pourrait céder la place à des solutions non sécurisées. Renoncer à s'échapper pour seulement un nbsp / autres éléments html est délicat. En outre, l '«espace» pourrait être oublié. C'est assez verbeux, alors qu'il existe des alternatives plus courtes.
Dnl

4

Le moyen le plus simple est:

<h:outputText value=" " />

Ce n'est pas le moyen le plus simple, à mon avis.
alexander

4

J'ai trouvé que l'analyseur se plaindrait si j'utilisais le &nbsp; entité dans ma page. Après quelques recherches, j'ai appris que si j'ajoutais une déclaration DOCTYPE au début de la page, l'entité était autorisée. J'utilise cette déclaration DOCTYPE:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

Un effet secondaire de ceci est que le code résultant (comme vu en utilisant la fonction "afficher la source" d'un navigateur Web) ne contient pas réellement l' &nbsp;entité. Il inclut à la place les caractères réels qui représentent un espace insécable. Bien que cela fonctionne, ce n'est pas vraiment ce que je veux. Je cherche toujours un moyen de faire en sorte que l'analyseur ne remplace pas l'entité par le caractère.

Plus d'informations ici: http://java.net/jira/browse/JAVASERVERFACES-1576


2

Vous pouvez utiliser la primefacesbibliothèque

 <p:spacer width="10" />

Cela ne répond pas à la question. Une fois que vous aurez une réputation suffisante, vous pourrez commenter n'importe quel message ; à la place, fournissez des réponses qui ne nécessitent pas de clarification de la part du demandeur . - De l'avis
Luca Detomi

@ihebiheb était prendre +6, ne me dis pas que c'est faux, parce que je sais que c'est vrai, dis juste bla bla ..
Mohamed Aymen Charrada

Votre réponse a été signalée comme trop courte, car elle manque de détails. Je vous suggère d'ajouter des détails pour permettre aux utilisateurs de comprendre «pourquoi» votre solution pourrait être bonne ou peut-être la meilleure. L'ajout d'utilisateurs de detailslet adaptent votre solution à des problèmes légèrement différents.
Luca Detomi

1

juste pour ajouter aux options: <h:outputText value="&amp;nbsp;" escape="false"/>travaillé


Je pense que la fuite est si importante que cela pourrait céder la place à des solutions non sécurisées. Renoncer à s'échapper pour seulement un nbsp / autres éléments html est délicat. De plus, c'est assez verbeux, alors qu'il existe des alternatives plus courtes.
Dnl

0

Pas nécessaire de donner 160. 141 fonctionnera également. Pour le champ de valeur, indiquez value = "& # 141".


En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.