La solution la plus simple pour désinfecter leur entrée est de donner le drapeau! Important à tous vos attributs de style - puis de rechercher et de remplacer tous les indicateurs importants que l'utilisateur a saisis dans son CSS personnalisé.
Voici quelques informations supplémentaires sur ce drapeau: http://www.smashingmagazine.com/2010/11/02/the-important-css-declaration-how-and-when-to-use-it/
Une solution plus simple est de supprimer tous les tags de l'entrée utilisateur - et permettre que CSS à appliquer à l'attribut de style d'un élément particulier.
Cependant, l'une ou l'autre de ces solutions est loin d'être à toute épreuve. Un utilisateur pourrait simplement créer un élément absolument positionné pour couvrir toutes les parties du site Web qu'ils souhaitent. Si vous voulez arrêter ceci, vous n'aurez pas d'autre choix que d'analyser intelligemment chaque attribut de style qu'ils spécifient et d'en supprimer ceux qui pourraient potentiellement nuire à la mise en page du site. C'est une opération très délicate - et en supposant que vous puissiez le faire correctement, tout attribut que vous désalignez diminuera l'utilité de les laisser écrire leurs propres styles en premier lieu.
Je pense que vous devez vous demander: avez-vous vraiment confiance en ces utilisateurs pour écrire leur propre CSS et HTML? Ou pourrait-il être une meilleure option pour enquêter textile ou markdown *? Si vous faites confiance à ces utilisateurs, cela ne devrait-il pas être un problème? Je suppose que plus d'informations sur la nature de ce contenu m'aiderait à vous donner des solutions plus appropriées.
* Je ne peux pas publier un lien direct vers la page d'accueil en raison de mesures préventives contre le spam StackOverflow. Le premier lien d'une recherche google de "démarque" est l'endroit où vous pouvez en apprendre plus. Pardon.
Qu'est-ce que vous essayez de faire avec cela?Vous pourriez fournir * certaines * propriétés, mais pas toutes. Ou peut-être utiliser une interface graphique pour modifier le CSS? – Blender