# getCssReferences
La méthode getCssReferences()
permet d'injecter des feuilles de style personnalisées dans le widget de Smart Element.
Elle doit retourner un tableau contenant le chemin des fichiers css à insérer dans la page HTML. Ces chemins sont
relatifs au répertoire d'installation.
string[] getCssReferences(\Anakeen\Core\Internal\SmartElement $document = null)
Par défaut, les classes Anakeen\Ui\DefaultView
et Anakeen\Ui\DefaultEdit
retournent les css suivantes :
[
"bootstrap" => \Anakeen\Ui\UIGetAssetPath::getCssBootstrap(),
"kendo" => \Anakeen\Ui\UIGetAssetPath::getCssKendo(),
"smartElement" => \Anakeen\Ui\UIGetAssetPath::getCssSmartElement()
];
Pour ajouter une feuille de style, il faut reprendre le tableau de la classe parente puis ajouter le chemin vers le nouveau fichier css. Ce chemin doit être relatif par rapport au répertoire d'installation d'Anakeen Platform 4.
Par exemple :
namespace My;
class MyRenderConfigView extends \Anakeen\Ui\DefaultView
{
public function getCssReferences(\Anakeen\Core\Internal\SmartElement $document = null)
{
$css = parent::getCssReferences();
$css["myCustom"] = "MY/Layout/custom.css";
return $css;
}
}
L'index dans la table permet d'identifier un fichier dans la perspective de le remplacer.
WARNING
Cet index doit être unique sur l'ensemble des css des rendus.
TIP
Dans un souci de performance, lorsqu'un rendu de Smart Element est modifié sur le navigateur, les css déjà enregistrées avec le même identifiant ne sont pas rechargées. Lors du rendu d'un Smart Element, les css spécifiques sont supprimées si elles ne sont plus demandées par le nouveau rendu. Afin de cibler des parties spécifiques du Smart Element ou des Smart Fields, la DOM des éléments générés par Anakeen Platform 4 est normalisée.