it-swarm.dev

Classi CSS standard / convenzioni di denominazione ID

Durante la creazione di un componente personalizzato e durante la progettazione del file di layout per il rendering della vista, ho difficoltà a determinare quali classi/ID CSS utilizzare nei miei elementi HTML per garantire che sfrutti i CSS incorporati di Joomla e altri modelli.

Comprendo che Joomla utilizza Bootstrap che fornisce un livello di coerenza e può essere referenziato qui: http://getbootstrap.com/2.3.2/base-css.html =

Tuttavia, oltre all'implementazione Bootstrap, ci sono classi/ID CSS standard che posso usare per garantire coerenza tra i molti modelli disponibili? E in tal caso, ci sono riferimenti a questi CSS classi/id?

Immagino che ti sto chiedendo se dovessi progettare l'aspetto del componente, quali passi intraprenderesti per garantire che l'aspetto e il funzionamento funzionino in sinergia con Joomla e altri modelli?

7
user3804927

quali misure adotteresti per garantire che l'aspetto grafico funzioni in sinergia con Joomla e altri modelli?

Non c'è modo di sapere cosa sarà e cosa non sarà supportato in un modello, quindi il mio consiglio sarebbe di non fare affidamento su un modello per dare uno stile al tuo componente. È impossibile garantire l'aspetto, che alla fine è stato deciso dal modello.

Ci sono tre possibili approcci; 1) Non fare nulla, 2) Spero che il modello supporti la sintassi BS2 o BS3 e ne scelga una, o 3) includa il proprio CSS.

L'uso degli elementi html corretti per il lavoro significa che il modello gestisce comunque la maggior parte dello stile (opzione 1). Per qualsiasi altra cosa, usa un approccio di denominazione di classe logica per gli elementi del tuo componente, seguendo gli standard di codifica Joomla per html e css e includi i tuoi css con il tuo componente. Se lo fai , per favore fornisci un interruttore per disabilitarlo.

Come sviluppatore di modelli faccio lo styling per qualsiasi componente che uso, non ho bisogno né voglio stili di componente, anche se apprezzo che alcuni potrebbero. Il modo migliore è fornire opzioni semplici nella configurazione dell'estensione; Carica css? si/no, carica js? si No. In caso contrario, assicurati che siano almeno caricati dal file di visualizzazione in modo che possano essere sovrascritti senza compromettere l'estensione.

5
Seth Warburton

Attualmente, non esiste un tale standard. La cosa più vicina è in effetti le classi Bootstrap.

Quello che faccio di solito è assicurarmi che funzioni in Protostar e spero per il meglio.

C'era una volta una sorta di standard, ma il supporto era basso e la documentazione era scadente. Fondamentalmente era solo un elenco di ID e classi utilizzate dal core.

4
Bakual

Vorrei che ci fosse una soluzione a questo, ma sfortunatamente no. Sarebbe bello se tutti potessimo sviluppare estensioni che si integrerebbero con tutti i modelli là fuori.

Sarebbe semplicemente meglio fare uso delle classi Bootstrap e se lo stile non si integra bene, l'utente può semplicemente creare un Template Override per il componente.

Assicurati solo di rendere tutto il più dinamico possibile.

Potresti aver notato se hai mai esaminato il codice del modulo di terze parti, che molti di loro inseriscono il markup HTML in mod_modulename.php , il che significa che l'utente non può sovrascrivere la vista e quindi deve eseguire un hack di base per modellare il modulo in base alle loro esigenze.

Questo è il motivo per cui tutti i markup devono sempre essere inseriti nel file di visualizzazione.

Spero che sia di aiuto

4
Lodder