IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Websphere Java Discussion :

[Websphere WCM] CSS dans un portlet


Sujet :

Websphere Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 95
    Points : 72
    Points
    72
    Par défaut [Websphere WCM] CSS dans un portlet
    Bonjour,
    Mon probleme est tres simple pourtant je n'ai pas trouve d'aide ou solution pour ce pb.

    Voila, j'ai realise un site web a l'aide du Web Content Management. Je l'ai realise en standalone. Donc dans mes Presentation Templates j'ai les tags html <html>, <head>. J'utilise une feuille de style css.
    Bref en standalone mon site fonctionne parfaitement et les graphiques sont detaille dans ma feuille de style.

    Mais quand j'ai voulu integrer ce site dans le portail (donc en tant que portlet) je suis oblige de modifier mes Presentation Templates. Forecement puisque maintenant mon code HTML est integrer dans le code du portail. J'ai donc enlever mes balise html <head></head> et tout ce qu'il y avait entre. Enfin bref je ne peux donc plus charger ma css.

    Y a t'il un moyen de charger une css dans un portlet? Si oui comment?

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 95
    Points : 72
    Points
    72
    Par défaut
    Bon j'ai trouve une solution un peu bricole mais bon ca fonctionne.

    En fait j'ai d'abord pense ajouter ma feuille de style grace a du JavaScript comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    <script type="text/javascript">
    	// Add stylesheet, using DOM script to insert in HEAD, if possible.
    	var _wroteCSS = false;
    	if (document.getElementsByTagName && document.getElementById)
    	{
    		var styleSheetLinkID = "portlet_css_link";
    		var styleSheetLinkElement = document.getElementById(styleSheetLinkID);
    		if (!styleSheetLinkElement)
    		{ 
    			var head; 
    			var heads = document.getElementsByTagName("head");
    			if (!heads || heads.length == 0)
    			{
    				var html = document.getElementsByTagName("html")[0];
    				if (html)
    				{
    					head = document.createElement("head");
    					html.appendChild(head);
    				}
    			}
    			else head = heads[0];
    			if (head)
    			{
    				var link = document.createElement("style");
    				link.setAttribute("id", styleSheetLinkID);
    				link.setAttribute("rel", "STYLESHEET");
    				link.setAttribute("type", "text/css");
    				link.setAttribute("href", 'URL DE MA CSS');
    				head.appendChild(link);
    				_wroteCSS = true;
    			}
    		}
    	}
    	if (!_wroteCSS)
    	{ 
    		document.write('<Component name="NOM DE MON COMPOSANT CSS"/>');
    	}
    </script>
    En ajoutant ce code dans une template de presentation il sera executer et ma css sera charger. Malheureusement le WCM ne permet pas d'obtenir l'URL de ma css. En effet si j'appel mon composant CSS ca ne me renverra que ceci:
    <link rel="stylesheet" type="text/css" href="url de ma css" />

    Donc je ne peut pas avoir just "url de ma css".
    Bref cette solution n'est pas bonne.
    J'ai donc utiliser un composant HTML dans lequel j'ai mis tout mon code CSS. j'appel ce composant en l'encadrant par les balises <style> et </style>. ce qui n'est pas encore tres propre puisqu'a priori cette balise ne doit se trouver que dans la partie <head> de ma page HTML. Donc ce n'est pas du tout W3C compliant comme solution mais ca marche.

    Bref le WCM n'est pas nickel nickel pour ce qui est des CSS. Par exemple il est impossible d'ajouter une image dans un code CSS (dans un composant CSS). ce qui est pourtant bien pratique!

  3. #3
    Membre du Club
    Inscrit en
    Avril 2003
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 48
    Points : 41
    Points
    41
    Par défaut
    Jsute pour information : Pourquoi tu n'inclus tes css dans le thème de ta page ?
    Justement le thème est fait pour ca.

    WCM est fait pour afficher du contenu dans un thème, il n'est en rien fait pour inclure des css.

    Je serais intéressé d'avoir ta réponse la dessus.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. feuille css dans du code xsl
    Par bob33 dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 10/01/2006, 15h37
  2. CSS dans un PHP
    Par DannyKronstrom.com dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 16/10/2005, 23h15
  3. "Incorporation" d'un CSS dans un fichier html
    Par kalan dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 31/08/2005, 18h56
  4. [XSL] Utiliser des CSS dans un fichier XSL
    Par alainme dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 13/04/2005, 11h47
  5. [Portal] Submit dans un portlet
    Par nic211 dans le forum Oracle
    Réponses: 9
    Dernier message: 07/07/2004, 19h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo