2009-07-15 6 views
2

J'ai un site Web qui permet à un utilisateur de créer des articles de blog. Il y a quelques étiquettes listées, mais la plupart des balises HTML standard sont acceptables.Comment rendre HTML écrit par les utilisateurs sur un site, pas en conflit avec les feuilles de style du site?

Cependant, j'ai des problèmes avec la façon dont les pages sont affichées. Je garde le HTML enveloppé dans son propre div. Je voudrais finalement garder le HTML de l'utilisateur séparé des feuilles de style des sites principaux afin qu'il puisse éviter d'hériter des styles et de visser la mise en page du site d'origine où le HTML est affiché. Donc, à la fin, y a-t-il quelque chose que je puisse appliquer à un div pour que son contenu soit mis en quarantaine du reste du site?

Merci!

Répondre

3

Vous pouvez utiliser une feuille de style de réinitialisation pour réinitialiser les propriétés de ce DIV spécifique et de ses enfants. Et de l'autre côté, vous aurez probablement besoin d'un analyseur CSS pour ajuster la feuille de style de l'utilisateur pour ce DIV spécifique.

+2

Convenu. Le yahoo est plutôt bon. http://developer.yahoo.com/yui/reset/ – NikolaiDante

0

Pourriez-vous formater chaque contenu généré par l'utilisateur avec un div de "nom d'utilisateur" de classe en plus de tous les autres noms de classe que vous pouvez ajouter automatiquement?

Ensuite, ils-je suppose qu'ils peuvent formater et styler comme ils le souhaitent, peuvent avoir tous leurs styles préfacés comme suit: div.username selector.

Sinon, vous pouvez utiliser les iframes.

1

Vous pouvez le faire dans un cadre ou un iframe. Cela le gardera séparé de toutes les manières.

0

Vous pouvez utiliser un iframe pour les séparer complètement si vous voulez vraiment être extrême à ce sujet.

Ou, vous pouvez les limiter à des styles en ligne seulement l'écriture afin qu'ils ne peuvent pas influer sur votre feuille de style page:

1) dépouiller toutes les balises de style HTML l'utilisateur crée. De cette façon, ils ne peuvent pas remplacer vos styles. 2) valider leur code et soit corriger ou rejeter des choses comme des balises non fermées ou des éléments qui ne devraient pas être dans un div (comme des balises de tête ou de corps) et s'assurer que tout se ferme correctement afin qu'il ne puisse pas gâcher n'importe quel HTML de votre page après le div il est contenu dedans.

Questions connexes