Back to top

Autore Topic: info metodo addStyleSheet  (Letto 4102 volte)

Offline t3cnoSite

  • Esploratore
  • **
  • Post: 98
    • Mostra profilo
info metodo addStyleSheet
« il: 09 Feb 2010, 16:25:49 »
Quando aggiungo un foglio css ad una pagina, con l'istruzione addStyleSheet, questo css viene applicato a tutta la pagina intera oppure solo alla parte della pagina dove addStyleSheet è utilizzato?
Faccio un esempio: mettiamo che ho un componente, il componente visualizzerà un content, magari applica a questo content un css, quest'ultimo influenzerà anche per esempio il titolo della pagina o solo la parte content su cui il componente agisce?

mau_develop

  • Visitatore
Re:info metodo addStyleSheet
« Risposta #1 il: 09 Feb 2010, 16:33:37 »
al tuo codice del css gliene frega assolutamente nulla... è il browser che lo interpreta, non il server, quindi al browser viene restituita l'intera pagina con dei tag che il browser interpreterà secondo ciò che il css gli dice.

...quindi.... css diversi assegnati a tag uguali .. fanno casino

Infatti in joomla esistono i suffissi delle classi proprio per qs motivo.

M.

Offline t3cnoSite

  • Esploratore
  • **
  • Post: 98
    • Mostra profilo
Re:info metodo addStyleSheet
« Risposta #2 il: 09 Feb 2010, 16:43:29 »
Mi piace questa risposta, soprattutto perchè non so come implementare in un componente un suffisso classe modulo.

Cioè, metti che il suffisso classe modulo neanche glielo faccio scegliere all'utente, per cui ne impongo uno io, come implementarlo?
Se giustamente non pouoi spiegarmi tutto inviami anche link se ne avessi.

Quindi mi assicuri che col suffisso classe modulo, anche per un componente, posso aggiungere css senza che questi influenzino tutta la pagina?

mau_develop

  • Visitatore
Re:info metodo addStyleSheet
« Risposta #3 il: 09 Feb 2010, 22:09:31 »
mmmhh mi sa che nn ci siamo capiti...

se in una pagina hai una categoria hai un css base che appartiene a tutte le categorie più la possibilità di customizzare una (o più) determinate categorie con un suffisso _pippo che ti si aggiungerà alla classe standard del componente.
cioè se il componente ha una classe "titolo" puoi ottenere per tutto il componente le classi "titolo_suffisso" "sottotitolo_suffisso".
Anche i menu e credo tutti i moduli possono godere di questo "privilegio".

questo evita a tutti i moduli/componenti/etc. di una pagina di avere lo stesso stile

questo è tutto ciò che consente Joomla

M.

Offline bitliner

  • Nuovo arrivato
  • *
  • Post: 6
    • Mostra profilo
Re:info metodo addStyleSheet
« Risposta #4 il: 09 Feb 2010, 22:22:51 »
Ok.
A questo punto, non mi puoi aiutare a capire come attuare tutto ciò in codice?
O faccio prima a crearmi una classe a parte modificando opportunamente tutti i tag aggiundogli il nome della classe css opportuna?

mau_develop

  • Visitatore
Re:info metodo addStyleSheet
« Risposta #5 il: 09 Feb 2010, 22:54:08 »
...azz forse ho capito cosa vuoi fare... aggiungere il foglio di stile in un punto preciso del codice affinchè abbia effetto solo su quel pezzetto? ... come chiuso in un box?

... non è che forse ti serve $pippo->addStyleDeclaration(“n_tag { stile }”)

M.

Offline t3cnoSite

  • Esploratore
  • **
  • Post: 98
    • Mostra profilo
Re:info metodo addStyleSheet
« Risposta #6 il: 10 Feb 2010, 15:48:30 »
Hai capito!!!...come chiuso in un box.

Con questa chiamata:
Codice: [Seleziona]
$pippo->addStyleDeclaration(“n_tag { stile }”) che intendi?
Cos è $pippo?
Che parametri gli passo?

Da quanto risulta dalla documentazione, mi sembra che fa la stessa cosa di addStyleSheet, altrimenti che differenza c'è?

Offline = odino =

  • Instancabile
  • ******
  • Post: 5696
  • Sesso: Maschio
  • "In realtà li trasforma in menomati" Danzel
    • Mostra profilo
Re:info metodo addStyleSheet
« Risposta #7 il: 10 Feb 2010, 16:37:44 »
pippo è una factory del documento, gli passi direttamente delle istruzioni CSS, non il richiamo al foglio di stile

Offline t3cnoSite

  • Esploratore
  • **
  • Post: 98
    • Mostra profilo
Re:info metodo addStyleSheet
« Risposta #8 il: 10 Feb 2010, 16:41:15 »
E cosa cambia?
Cambia solo che invece di passargli un file gli passo una stringa?
Se così non ne vedo l'utilità del consiglio.

mau_develop

  • Visitatore
Re:info metodo addStyleSheet
« Risposta #9 il: 10 Feb 2010, 16:49:51 »
Non credo sia possibile inserire un css in un punto della pagina che influisca solo in quel punto.

Credo sia invece possibile forzare uno stile in un punto con un css inline

M.

vamba

  • Visitatore
Re:info metodo addStyleSheet
« Risposta #10 il: 10 Feb 2010, 16:53:29 »
Citazione
E cosa cambia?
Cambia, cambia.
Se gli passi un file che ha al suo interno delle classi già utilizzate dal foglio di stile principale del sito (ad esempio) queste classi avendo lo stesso nome entreranno in conflitto e la prima in ordine di lettura verrà eseguita.
Quindi dovrai passare un file che abbia dei nomi classe differenti, che dovranno a loro volta essere dichiarate anche all'interno dell'estensione che vuoi far girare, oppure dichiarare solo quelle che intendi utilizzare, che ovviamente dovranno a loro volta essere dichiarate anche all'interno dell'estensione che vuoi far girare,  (e qui torna in ballo l'esempio inserito da mau_develop)

L'utilizzo della scorciatoia addStyleSheet all'interno dell'estensione fa in maniera che il file dichiarato, o la stringa, vengano richiamate solo quando viene chiamata l'estensione, quindi solo quando questa viene resa visualizzabile.
 

Offline t3cnoSite

  • Esploratore
  • **
  • Post: 98
    • Mostra profilo
Re:info metodo addStyleSheet
« Risposta #11 il: 10 Feb 2010, 16:59:35 »
Citazione
E cosa cambia?
Cambia, cambia.
Se gli passi un file che ha al suo interno delle classi già utilizzate dal foglio di stile principale del sito (ad esempio) queste classi avendo lo stesso nome entreranno in conflitto e la prima in ordine di lettura verrà eseguita.
Quindi dovrai passare un file che abbia dei nomi classe differenti, che dovranno a loro volta essere dichiarate anche all'interno dell'estensione che vuoi far girare, oppure dichiarare solo quelle che intendi utilizzare, che ovviamente dovranno a loro volta essere dichiarate anche all'interno dell'estensione che vuoi far girare,  (e qui torna in ballo l'esempio inserito da mau_develop)

L'utilizzo della scorciatoia addStyleSheet all'interno dell'estensione fa in maniera che il file dichiarato, o la stringa, vengano richiamate solo quando viene chiamata l'estensione, quindi solo quando questa viene resa visualizzabile.
Temo che tu non abbia letto bene il topic. Le tue parole non mi aiutano affatto nella risoluzione del mio problema.
Temo che l'unica soluzione sarà cambiare il nome delle classi css del componente e aggiornare il codice, in modo da evitare conflitti.

mau_develop

  • Visitatore
Re:info metodo addStyleSheet
« Risposta #12 il: 10 Feb 2010, 17:20:10 »
Temo che tu non abbia letto bene il topic. Le tue parole non mi aiutano affatto nella risoluzione del mio problema.
-------------------------------------------------------
:) credo invece che vamba abbia letto molto bene e centrato il problema, che è poi quello che ti volevo spiegare io.
Se poi vuoi altre cose e non sai come spiegarti... beh, altro paio di maniche

M.

Offline t3cnoSite

  • Esploratore
  • **
  • Post: 98
    • Mostra profilo
Re:info metodo addStyleSheet
« Risposta #13 il: 10 Feb 2010, 17:47:09 »
Temo che tu non abbia letto bene il topic. Le tue parole non mi aiutano affatto nella risoluzione del mio problema.
-------------------------------------------------------
:) credo invece che vamba abbia letto molto bene e centrato il problema, che è poi quello che ti volevo spiegare io.
Se poi vuoi altre cose e non sai come spiegarti... beh, altro paio di maniche

M.
Parli tu mau che non riuscivi a spiegarti o che hai frainteso il topic fin dall'inizio?

Da quanto emerso devo per forza rinominare le classi per non farle entrare in conflitto. Se poi uso addStyleSheet o addStyleDeclaration il risultato non cambia, sempre conflitto ci sarà!

mau_develop

  • Visitatore
Re:info metodo addStyleSheet
« Risposta #14 il: 10 Feb 2010, 20:39:40 »
Hai capito!!!...come chiuso in un box.
-------------------------------------
che hai frainteso il topic fin dall'inizio
------------------------------------------

... deciditi...

cmq posso/possiamo aver frainteso tutto, ma se non riesci ad illuminare ciò che due non comprendono, il problema resta... ma a te ;)

M.


Offline bitliner

  • Nuovo arrivato
  • *
  • Post: 6
    • Mostra profilo
Re:info metodo addStyleSheet
« Risposta #15 il: 10 Feb 2010, 21:02:51 »
Hai capito!!!...come chiuso in un box.
-------------------------------------
che hai frainteso il topic fin dall'inizio
------------------------------------------

... deciditi...

cmq posso/possiamo aver frainteso tutto, ma se non riesci ad illuminare ciò che due non comprendono, il problema resta... ma a te ;)

M.
Mi dispiace ma il problema non resta affatto a me. Da mo che l'ho risolto, cercavo solo una soluzione migliore, che non sembra esistere a parte la vostra probabile incomprensione.

mau_develop

  • Visitatore
Re:info metodo addStyleSheet
« Risposta #16 il: 10 Feb 2010, 21:08:38 »
Da mo che l'ho risolto
-----------------------------

bene!

a parte la vostra probabile incomprensione
------------------------------------------

...capita

M.

Offline = odino =

  • Instancabile
  • ******
  • Post: 5696
  • Sesso: Maschio
  • "In realtà li trasforma in menomati" Danzel
    • Mostra profilo
Re:info metodo addStyleSheet
« Risposta #17 il: 11 Feb 2010, 16:30:43 »
ok, direi che può bastare  ;)

 



Web Design Bolzano Kreatif