uradi wrap celokupnog sadrzaja osim jedne klase

uradi wrap celokupnog sadrzaja osim jedne klase

offline
  • m4rk0  Male
  • Administrator
  • Administrator tech foruma
  • Marko Vasić
  • Gladijator - Maximus Decimus Meridius
  • Pridružio: 14 Jan 2005
  • Poruke: 15766
  • Gde živiš: Majur (Colosseum)

Hocu da sadrzaj klase "nesto3" izuzem od wrap-ovanja.

html:
<div class="wrap"> <div class="nesto1">Blabla</div> <div class="nesto2">Blabla</div> <div class="nesto3">Blabla</div> <div class="nesto4">Blabla</div> </div>

css:
.wrap:not(.nesto3) {    width: 1280px;    margin: 0 auto; }

U cemu gresim ?

BTW: Znam za alternativna resenja ali me interesuje bas upotreba :not selektora u ovom slucaju.



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 25 Jan 2004
  • Poruke: 2784
  • Gde živiš: Niš

Napisano: 10 Nov 2014 11:59

Moraš da odvojiš :not za jedan space od prve klase

.wrap :not(.nesto3) {    width: 1280px;    margin: 0 auto; }

Dopuna: 10 Nov 2014 12:01

znam ... nema nikakvog smisla s obzirom da se pseudo selektori koji se isto pišu sa dve tačke, pišu spojeno uz klasu... ta sintaksa...



offline
  • m4rk0  Male
  • Administrator
  • Administrator tech foruma
  • Marko Vasić
  • Gladijator - Maximus Decimus Meridius
  • Pridružio: 14 Jan 2005
  • Poruke: 15766
  • Gde živiš: Majur (Colosseum)

Nadao sam se da nije sintaksna greska, kad ono.. Smile Hvala.
:not selektor je bas oskudno objasnjen na netu i vidim sad da su pravila razlicita da li staviti razmak ili ne kod :not selektora. Ono sto sam zakljucio je:

p:not(.class) {   color: green; } /* nema razmaka kada ide pravilo "sve sa p elementom osim u slucaju klase .class" */ body :not(p) {    color: green; } /*postoji razmak kada ide pravilo "sve u okviru body elementa osim p elementa*/ .class1 :not(.class2) {    color: green; }/*postoji razmak kada ide pravilo "sve sa klasom .class1 osim klase .class2*/

Znaci u sustini zajedno ide samo kada je
elemenat:not(.klasa)
Jel tako ?

offline
  • PHP developer
  • Pridružio: 22 Mar 2006
  • Poruke: 3665
  • Gde živiš: 127.0.0.1

@Default: Ima smisla, itekako. Kad u CSS-u selektore napises spojeno, da bi stil bio primenjen element mora da sadrzi sve selektore. Tj.

.jedan.dva { /* neki css */ }

ce biti primenjen na element:

<div class="jedan dva">Ovaj element ima taj stil.</div>

dok, sa druge strane, ako postoji razmak izmedju selektora, to znaci da trazis element unutar elementa, odnosno:

.jedan .dva { /* neki css */ }

ce biti primenjen na element:

<div class="jedan"><div class="dva">Ovaj element ima taj stil.</div></div>

Pseudo-selektori nisu izuzeti iz ovog pravila. Medjutim, retko se pseudo selektor stavlja na sve elemente unutar nekog drugog elementa, tj uglavnom se koristi a:hover.

@m4rk0:

p:not(.class) {   color: green; } /* nema razmaka kada ide pravilo "sve sa p elementom osim u slucaju klase .class" - TACNO*/   body :not(p) {    color: green; } /*postoji razmak kada ide pravilo "sve u okviru body elementa osim p elementa - TACNO */   .class1 :not(.class2) {    color: green; }/*postoji razmak kada ide pravilo "sve sa klasom .class1 osim klase .class2 -  NETACNO */

Poslednje pravilo se primenjuje za sve elemente unutar elemen(a)ta koji imaju klasu "class1", a nisu klase "class2". Manje vise isto kao i drugo pravilo, samo sto umesto imena elementa za selektor imas klase.

offline
  • m4rk0  Male
  • Administrator
  • Administrator tech foruma
  • Marko Vasić
  • Gladijator - Maximus Decimus Meridius
  • Pridružio: 14 Jan 2005
  • Poruke: 15766
  • Gde živiš: Majur (Colosseum)

Hvala, shvatio. Smile

Samo jos jedno pitanje. Ako zelimo da uradimo exception za vise elemenata/klasa, kako onda ide sintaksa ? Na pr neka svi paragrafi budu zeleni osim onih koji pripadaju klasama class1 class2 i class3

p:not(.class1, .class2, .class3) {   color: green; }

ili

p:not(.class1 .class2 .class3) {   color: green; }

Ili nekako trece ?

offline
  • PHP developer
  • Pridružio: 22 Mar 2006
  • Poruke: 3665
  • Gde živiš: 127.0.0.1

Trece Wink

p:not(.class1):not(.class2):not(.class3) {   color: green; }

http://jsfiddle.net/te9yqcL9/

Trazis element za koji se poklapaju svi selektori: <p> element koji nema klasu "class1", "class2" i "class3".

offline
  • m4rk0  Male
  • Administrator
  • Administrator tech foruma
  • Marko Vasić
  • Gladijator - Maximus Decimus Meridius
  • Pridružio: 14 Jan 2005
  • Poruke: 15766
  • Gde živiš: Majur (Colosseum)

Hvala Ziveli

i samo jos jedna kombinacija, sorry Smile

Kako bi islo u slucaju da nije kombinacija element:not(.klasa) tj kada u osnovnoj sitaksi postoji razmak u odnosu na selektor ? Da li ce se i kod nabrajanja razdvajati, na pr:

.class :not(.class1) :not(.class2) :not(.class3) {   color: green; }

Jel ovako ispravno ?

offline
  • PHP developer
  • Pridružio: 22 Mar 2006
  • Poruke: 3665
  • Gde živiš: 127.0.0.1

Ovo poslednje parce koda "hvata" element u minimalno cetvrtom nivou dubine (i dublje), odnosno element koji nije klase class3, a nalazi se unutar elementa koji nije klase class2, a on se nalazi unutar elementa koji nije klase class1, a nalazi se negde unutar elementa klase class. Odnosno:

<div class="class"><div class="test1"><div class="test2"><div class="test3">OVAJ ELEMENT</div></div></div></div>

Ko je trenutno na forumu
 

Ukupno su 663 korisnika na forumu :: 32 registrovanih, 2 sakrivenih i 629 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: 8u47, _Sale, Andrija357, Atomski čoban, babaroga, branko87, Brankoni, Brot, Despot1, dolinalima, Fulcrum, GrobarRomanticar, HrcAk47, MarKhan, MB120mm, MiG-29M2, Milan A. Nikolic, moonshine, nuke92, renoje2, royst33, ruma, SlaKoj, Snorks, Srki94, stegonosa, trajkoni018, vladas87, vlvl, voja64, zexoni, Zvrk