Nem 100% drupal téma, de mivel éppen az egyik git account igényem egy zen-less alapú starter theme, ezért talán van helye.
A lényeg, hogyha bárhol háttérképet adsz meg, a háttérkép tulajdonságait ugyanazon a szinten belül nem lehet felülírni.
Van ez a less rule, amit a sprite-okhoz használok:
.sprite(@background-position) {
background: url(../images/sprite.png) no-repeat @background-position;
display: block;
}Létrehozok vele egy képet:
.block-title {
.sprite(0 -288px);
}Majd használom a taboknál:
.tab-style {
.block-title;
color: #fff;
margin: 0 5px;
padding: 3px 15px 2px;
.border-radius(@grid-margin @grid-margin 0 0);
cursor: pointer;
------------------------------
background-color: #0095b2;
------------------------------
&:hover,
&:active,
&.toggle-active {
background-color: #E1ECF2;
.border-radius(@grid-margin @grid-margin 0 0);
color: @h2;
}
}A kötőjelek közé írt background szabály egyszerűen nem érvényesül. Dízízdö bug. Ha egy szinten akarsz felülírni korábban lessben definiált background háttérszínét, nem fog menni. Próbáltam mindenhogy, megadtam a .sprite-ban, a .block-title-ben, de nem jött össze..
Aztán észrevettem, hogy alatt a &-el hozzákapcsolt szabályokban viszont működik. Nosza hát, próbáljuk ki, hogy &-el hozzákapcsoljuk a nagy büdös semmit:
tab-style {
.block-title;
color: #fff;
margin: 0 5px;
padding: 3px 15px 2px;
.border-radius(@grid-margin @grid-margin 0 0);
cursor: pointer;
--------------------------
& {
background-color: #0095b2;
}
--------------------------
&:hover,
&:active,
&.toggle-active {
background-color: #E1ECF2;
.border-radius(@grid-margin @grid-margin 0 0);
color: @h2;
}
}Éééés voilá! Mondom poénból kipróbálom, nem voltam biztos, hogy működni fog, pedig de.