03-10-2011, 14:12
Cześć,
mam taką sytuację, że napisałem sobie system oceniania. Wszystko tam działa dobrze, ale teraz chciałbym, żeby jak najzgrabniej dorobić do niego jego mniejszą wersję (czyli po prostu zmniejszyć gwiazdki). Teraz działało to tak, że był div klasy .rating a w nim były klasy .star, .starholder i tak też w całym skrypcie js (jquery) i php się do tego odnosiłem. Czy teraz da się zrobić jakoś tak, żeby jak najmniej zmienić, tj:
czyli tylko dodać jedną klasę do głównego diva. Jeśli musiałbym zmenić rating na rating.small, to js by się posypał, no i musiałbym zrobić to samo dla starholder i star, co oznacza dużo zmian w pliku php wczytującego z bazy dane i wypisującego odpowiednią ich ilość w takiej formie jak podałem. Próbowałem tak, ale oczywiście się nie udało, bo wszystko jest dziedziczone. Chciałem zrobić tak jak w przypadku elementów po id, tj [syntax=css]#element .klasa[/syntax] i wtedy ta klasa odnosi się tylko do tego elementu. Nie da się zrobić tak, żeby pewna klasa nie byłą dziedziczona, a była ważna tylko w elemencie o innej klasie? Tzn robiłem to tak...:
Czyli w skrócie chciałbym, żeby np. div.rating.small był identyfikatorem,bo wtedy mogę zrobić taki trik, że .star i .starholder pozostają niezmienione, czyli nie ruszam kodu php (bo "który to", określałby div w którym się znajdują.).
Dziękuję!
mam taką sytuację, że napisałem sobie system oceniania. Wszystko tam działa dobrze, ale teraz chciałbym, żeby jak najzgrabniej dorobić do niego jego mniejszą wersję (czyli po prostu zmniejszyć gwiazdki). Teraz działało to tak, że był div klasy .rating a w nim były klasy .star, .starholder i tak też w całym skrypcie js (jquery) i php się do tego odnosiłem. Czy teraz da się zrobić jakoś tak, żeby jak najmniej zmienić, tj:
Kod:
<div style='rating rating.small'><div class="starholder"><div class="star"></div>(...)</div></div>
czyli tylko dodać jedną klasę do głównego diva. Jeśli musiałbym zmenić rating na rating.small, to js by się posypał, no i musiałbym zrobić to samo dla starholder i star, co oznacza dużo zmian w pliku php wczytującego z bazy dane i wypisującego odpowiednią ich ilość w takiej formie jak podałem. Próbowałem tak, ale oczywiście się nie udało, bo wszystko jest dziedziczone. Chciałem zrobić tak jak w przypadku elementów po id, tj [syntax=css]#element .klasa[/syntax] i wtedy ta klasa odnosi się tylko do tego elementu. Nie da się zrobić tak, żeby pewna klasa nie byłą dziedziczona, a była ważna tylko w elemencie o innej klasie? Tzn robiłem to tak...:
Kod:
div.rating {
}
div.rating.large {
background-image: url(res/staroff.png);
position: absolute;
right: 25%;
top: 20px;
width: 160px;
height: 32px;
}
div.rating.large .star {
border: none;
background-image: url(res/staron.png);
width: 32px;
height: 32px;
}
div.rating.large .starholder {
float: left;
width: 32px;
height: 32px;
}
div.rating.small {
background-image: url(res/staroff_s.png);
width: 80px;
height: 16px;
}
div.rating.small .star {
width: 16px;
height: 16px;
background-image: url(res/staron_s.png);
}
div.rating.small .starholder {
float: left;
width: 16px;
height: 16px;
}
Czyli w skrócie chciałbym, żeby np. div.rating.small był identyfikatorem,bo wtedy mogę zrobić taki trik, że .star i .starholder pozostają niezmienione, czyli nie ruszam kodu php (bo "który to", określałby div w którym się znajdują.).
Dziękuję!