Własny komponent i niezależny arkusz styli CSS.
Wyniki 1 do 10 z 10

Temat: Własny komponent i niezależny arkusz styli CSS.

  1. #1
    Bywalec GrzesiekP awatar
    Dołączył
    27-09-2010
    Wpisy
    124
    Punkty
    11

    Domyślny Własny komponent i niezależny arkusz styli CSS.

    Jestem w trakcie pisania dosyć zaawansowanego komponentu pod Joomlę.

    Piszę pod J!1.6 i pod te style, jednak chciałbym, aby komponent był niezależny wobec stylu szablonu J!.

    Póki co mam taki problem, że (dla przykładu) linki przybierają styl z szablonu J! zamiast z mojego szablonu. Dodawania klas nic nie pomaga - zawsze styl jest nadpisywany stylem z J!.

    Ktoś ma jakieś rady dla mnie?

    Dziękuję

  2. Pani Reklamowa
    Pani Reklamowa jest aktywna
    Avatar Panny Google

    Dołączył
    19-08-2010
    Skąd
    Internet
    Postów
    milion
    Pochwał
    setki
  3. #2
    Senior moje awatar
    Dołączył
    08-01-2008
    Skąd
    Silesia
    Wpisy
    6 057
    Punkty
    188

    Domyślny

    A masz własny plik css? Jeśli tak to musisz do odpowiednie załadować, każdemu linkowi w Twoim komponencie musisz nadać odpowiednią klasę.
    Webdeveloper do usług ;)

  4. #3
    Bywalec GrzesiekP awatar
    Dołączył
    27-09-2010
    Wpisy
    124
    Punkty
    11

    Domyślny

    Mam własny plik CSS A nawet kilka.

    Ładuję go poprzez poniższy kod:
    Kod PHP:
    $document JFactory::getDocument();
            
    $document->addStyleSheet('components/....../stylesheet.css'); 
    W pliku tym mam zdefiniowane importy innych plików .css (może to jest problemem, sprawdzę).

    Każdy link ma przypisaną klasę, a mimo to przypisywany jest styl szablonu J!.

  5. #4
    Senior zwiastun awatar
    Dołączył
    20-09-2005
    Wpisy
    27 315
    Punkty
    1142

    Domyślny

    1. Generalnie: Własny arkusz stylu ma sens, jeśli trzeba stylizować rzeczy niestandardowe, a nie standardowe. Jeśli administrator będzie chciał wystylizować inaczej rzeczy standardowe, ma w Joomla! proste do tego narzędzia: klasy CSS strony, modułu, menu (przyrostki).
    2. Oprócz dodania własnego arkusza stylów, trzeba jeszcze uwzględnić kwestie kaskadowości i dziedziczenia. To zapewne jest powód, że nie widzisz różnic (zakładając, że arkusz jest wczytany, o czym nie piszesz).
    Korzystaj i ciesz się!
    ===============
    Zwiastun
    Biblioteka Elektronicznej Dokumentacji Joomla!

  6. #5
    Bywalec GrzesiekP awatar
    Dołączył
    27-09-2010
    Wpisy
    124
    Punkty
    11

    Domyślny

    No dobra, zauważyłem pewną zależność - otóż ciągłe ignorowania moich stylów wiąże się z tym, iż mój arkusz jest ładowany wcześniej niż arkusz szablonu J! (ale o dziwo, dzieje się to na standardowych szablonach oraz także na kilku innych - szablon od Gavicka działa elegancko).

    Chciałbym zrobić uniwersalną szatę graficzną, na wygląd której nie będzie miał wpływ szablon J!.

    I tu moje pytanie - czy mam jakieś inne rozwiązanie niż dopisywanie "!important" przy właściwościach CSS?

  7. #6
    Senior moje awatar
    Dołączył
    08-01-2008
    Skąd
    Silesia
    Wpisy
    6 057
    Punkty
    188

    Domyślny

    Bo jeśli ktoś umie zrobić szablon to używa addStyleSheet, a jak nie to dodaje w szablonie "na sztywno" i stąd ten błąd.
    Możesz użyć kilku linijek kodu, które wczytają treść wygenerowanej strony, wyszukają </head> i zamienią na <link rel="stylesheet" type="text/css" href="..." /></head>, wszystko na docs.joomla.org ; )
    Webdeveloper do usług ;)

  8. #7
    Bywalec malkowitch awatar
    Dołączył
    26-02-2008
    Skąd
    Warszawa
    Wpisy
    499
    Punkty
    96

    Domyślny

    Cytat Wysłane przez GrzesiekP Zobacz wiadomość
    Mam własny plik CSS A nawet kilka.

    Ładuję go poprzez poniższy kod:
    Kod PHP:
    $document JFactory::getDocument();
            
    $document->addStyleSheet('components/....../stylesheet.css'); 
    W pliku tym mam zdefiniowane importy innych plików .css (może to jest problemem, sprawdzę).

    Każdy link ma przypisaną klasę, a mimo to przypisywany jest styl szablonu J!.
    Można to trochę łatwiej (zależy od wersji PHP):
    Kod PHP:
    JFactory::getDocument()->addStyleSheet('components/....../stylesheet.css'); 
    Ponadto zalecałbym dodawanie tego w poszczególnym pliku szablonu widoku czyli np. dla com_content: /components/com_content/views/articles/tmpl/default.php
    Wtedy deweloper korzystający z Template Overrrides będzie mógł łatwo wyłączyć styl dostarczony z komponentem. Rozwiązanie tego na klasach podstron może powodować potrzebę kombinowania z priorytetami selektorów ponadto wydłuża to parsowanie styli w przeglądarce.

  9. #8
    Bywalec GrzesiekP awatar
    Dołączył
    27-09-2010
    Wpisy
    124
    Punkty
    11

    Domyślny

    Nie wiem, ale ten szablon Beez2 jest coś popsuty

    Dodałem wpis w pliku component.forum
    Kod PHP:
    JFactory::getDocument()->addStyleSheet('components/com_mycomponent/styles/default/layout.css'); 
    Ale tylko na Beez szablon jest ładowany przed stylami szablonu. Nie wiem o co chodzi doprawdy
    Jak wypuszczę komponent, to chciałbym, aby na czystej instalacji J! wyglądał tak samo, jak na innych komponentach

  10. #9
    Bywalec malkowitch awatar
    Dołączył
    26-02-2008
    Skąd
    Warszawa
    Wpisy
    499
    Punkty
    96

    Domyślny

    Nic nie jest popsute. Co najwyżej twój plik CSS i to nie dosłownie.

    Po pierwsze jeśli jakiś plik CSS wrzucony zostanie (wpisany ręcznie) w szablonie po sekcji "<jdoc:include type=head..." to stare style zostaną nadpisane. Ponadto dochodzi jeszcze wartość poszczególnych wpisów. Nigdy nie ma pewności, że się uzyska żądany efekt zawsze.

  11. #10
    Bywalec GrzesiekP awatar
    Dołączył
    27-09-2010
    Wpisy
    124
    Punkty
    11

    Domyślny

    Mimo, iż mam w CSS definicję:
    #gpcom ol

    To i tak styl ten jest nadpisywany przez wcześniej zdefiniowaną klasę:
    #main ol

    #gpcom ol siłą rzeczy znajduje się wewnątrz #main ol

Podobne tematy

  1. Szablony - brakuje styli css.
    przez ats2008 na forum Instalacja, aktualizacja, migracje
    Odpowiedzi: 10
    Ostatni post/autor: 26-11-2010, 16:14
  2. Arkusz css edytora JCE
    przez januszczyk na forum Administracja Joomla!
    Odpowiedzi: 0
    Ostatni post/autor: 09-03-2010, 10:48
  3. błąd z wyświetlaniem styli css
    przez siomer na forum Szablony, wygląd, formatowanie
    Odpowiedzi: 2
    Ostatni post/autor: 21-07-2009, 00:48
  4. Osobny arkusz CSS w 1.015? (IE fixed)
    przez desenhooo na forum Szablony graficzne
    Odpowiedzi: 1
    Ostatni post/autor: 21-10-2008, 19:05
  5. Proszę o pomoc - osobny arkusz css dla IE
    przez jamircan na forum Szablony graficzne
    Odpowiedzi: 1
    Ostatni post/autor: 12-08-2006, 14:02

Reguły pisania

  • Nie możesz zakładać nowych tematów
  • Nie możesz dodawać wypowiedzi
  • Nie możesz dodawać załączników
  • Nie możesz poprawiać swoich postów
  •