UWAGA: Strona zawiera materiały archiwalne. Większość artykułów dotyczy Joomla! 1.0
Start arrow Programowanie arrow Szablony - techniki zaawansowane arrow Stosowanie przyrostków klas CSS
Stosowanie przyrostków klas CSS Drukuj Email
Redaktor: Polish Joomla Team   
18.06.2007.

Niekiedy chcesz nadać niektórym modułom albo stronom specyficzny, różniący je od standardowego wygląd. Problem ten rozwiązuje w skryptach parametry moduleclass_sfx oraz pageclass_sfx, np.

<div class="componentheading<?php echo $params->get( 'pageclass_sfx' ); ?>">
   <?php echo $title->name; ?>
</div>

Przykład 2

 <div class="module<?php echo $moduleclass_sfx; ?>">
   tu kod wyswietlający modul
</div>

Objaśnienie: Jeśli w pierwszym przypadku zostanie wykryty parametr pageclass_sfx, to w arkuszu stylów CSS będzie wyszukiwana klasa .componentheading+parametr, a w drugim przypadku klasa .module+parametr.

Aby uzyskać zamierzony efekt, należy:

  • w arkuszu stylów CSS umieścić reguły dla odpowiednich klas
  • wyszczególnić w parametrach pozycji menu lub w parametrach modułu przyrostek klasy CSS.

Przykładowe definicje klas dla modułu:

table.moduletable_specyficznymodul {
  width: 100%;
  margin-bottom: 5px;
  padding: 0px;
  border-spacing: 0px;
  border-collapse: collapse;
}
 
table.moduletable_specyficznymodul th {
  background: url(../images/subhead_bg.png) repeat-x;
  color: #666666;
  text-align: left;
  padding-top: 4px;
  padding-left: 4px;
  height: 21px;
  font-weight: bold;
  font-size: 10px;
  text-transform: uppercase;
}
 
table.moduletable_specyficznymodul td {
  font-size: 11px;
  padding: 0px;
  margin: 0px;
  font-weight: normal;
}

W parametrach modułu, który ma korzystać z tych klas należy wpisać przyrostek _specyficznymodul

Dla modułu umieszczonego w pozycji oznaczonej stylem -3 (zobacz dalej), trzeba określić reguły dla klasy .module_specyficznymodul.

Przyrostek klasy strony, jeśli zostanie określony w parametrach pozycji menu, dodawany jest do wszystkich klas związanych z prezentacją w głównym obszarze zawartości. Jeśli w arkuszu stylów parser PHP nie znajdzie definicji klasy, użyje klasy podstawowej. Trzeba więc w arkuszu CSS rozważyć umiesczenie reguł dla nastepujących klas:

  • .componentheading_innywygladstrony
  • .conentheading_innywygladstrony
  • .contentpane_innywygladstrony
  • .contentdescription_innywygladstrony
  • .sectiontableheader_innywygladstrony
  • .sectiontableentry1_innywygladstrony
  • .sectiontableentry2_innywygladstrony
  • .sectiontablefooter_innywygladstrony
  • .contentpaneopen_innywygladstrony
  • .readon_innywygladstrony
  • .category_innywygladstrony
  • .small_innywygladstrony
  • .contact_e-mail_innywygladstrony
Zmieniony ( 18.06.2007. )
 
« poprzedni artykuł   następny artykuł »