web-dev-qa-db-fra.com

Quel css les extensions principales et tierces attendent-elles d'un modèle?

Je construis généralement des modèles Joomla dans lesquels je ne m'attends pas à ce que l'administrateur ajoute ses propres modules et composants. En tant que tel, mes styles CSS doivent simplement travailler sur les composants et les modules que j'ai construits ou inclus, et peuvent être maintenus assez minimes.

Cependant, je suis en train de créer un modèle pour quelqu'un qui aime jouer avec des composants tiers.

En tant que tel, je me demandais s’il existait une sorte de CSS Joomla par défaut qui signifie qu’ils rendraient normalement le rendu.

L'importation du code CSS de Bootstrap améliore l'aspect et la convivialité des modules de base, et semble au premier abord évident, mais j'ai examiné les modèles de base pour voir comment ils le font et ne semblent pas l'inclure.

Beez

  • Importe les modèles/system/css/system.css
  • Bootstrap CSS est un paramètre facultatif (et est désactivé par défaut)

Protostar

  • Importe une douzaine de scripts de ../../../media/jui/less/
  • Contient JHtml :: _ ('bootstrap.loadCss', false, $ this-> direction); - qui, à mon avis, ne charge que le CSS RTL, ce qui est facultatif et désactivé par défaut.

L'extension du modèle système semblerait une autre approche logique, mais les modèles principaux ne semblent pas le faire au-delà de la seule importation sur Beez. Cela dit, je soupçonne que le modèle système peut contenir ce que je veux, mais je ne trouve pas beaucoup d’informations sur son utilité.

Ajouter le fichier system.css (selon le modèle Beez) ne donne pas, par exemple, au module de connexion principal une apparence ordonnée comme le fait le Bootstrap CSS.

Je sais que je peux styler les éléments évidents - les en-têtes, les tableaux, les ensembles de champs, les champs, etc. - mais cela me semble facile de rater des choses.

Quels fichiers CSS devrais-je importer?

edit: les éléments suivants sont tous utiles en termes de modules Joomla principaux. Ceux-ci, plus un petit peu de CSS sur mesure, semblent donner l’objet d’une apparence parfaite sans bootstrap.

JHtml::_('stylesheet', 'media/jui/css/icomoon.css', array('version' => 'auto'));
JHtml::_('stylesheet', 'templates/system/css/system.css', array('version' => 'auto'));
JHtml::_('stylesheet', 'templates/system/css/general.css', array('version' => 'auto'));
2
Richard B

C'est l'une de ces choses où il y a des avantages et des inconvénients.

N'oubliez pas qu'il vous incombe pas (en tant que développeur de l'extension) de dicter la conception d'un site. La conception doit être dictée par le modèle, et le modèle seul.

C’est l’un des avantages de l’utilisation des classes Bootstrap de votre extension, que le développeur de modèle peut ensuite remplacer à sa guise et votre extension s’intégrera avec le reste du modèle.

L'inconvénient est que Joomla est ensuite couplé à Bootstrap) et que les performances, comme moi-même, détestent Bootstrap.

Donc, pour résumer, utilisez les classes Bootstrap et laissez le modèle se charger du reste. Si le webmaster souhaite modifier le style de votre extension, il peut créer un remplacement de modèle ou ajouter leur propre CSS à user.css.

J'espère que cela t'aides

1
Lodder