첫 번째 자식과 마지막 자식 이외의 CSS 선택기


105

저는 매우 진보 된 웹 사이트를 만들고 있습니다. 내 질문 : 그것은을 제외한 모든 다른 아이들을 선택하는 것이 가능 :first-child하고 :last-child? :not()선택기 가 있다는 것을 알고 있지만 괄호 안에 있지 않은 두 개 이상에서는 작동하지 않습니다. 이것이 내가 가진 것입니다.

#navigation ul li:not(:first-child, :last-child) {
    background: url(images/UISegmentBarButtonmiddle@2x.png);
    background-size: contain;
}

당신은 이것을 사용하는 데 용감합니다. 최신 브라우저에서만 작동하며 모든 사람이 사용하는 안티 브라우저에서는 확실히 작동하지 않습니다.
삭제

2
@Radu : "나는 매우 진보 된 웹 사이트를 만들고 있습니다"놀랄 일이 아닙니다 ...
BoltClock

1
@BoltClock, 맞아요, 그냥 ... 경고의 말씀입니다. 그러나 어쨌든 대상이 이미지의 이름에서 알 수 있듯이 iOS Safari이면 안전해야합니다.
삭제

1
이제이 질문이 왜 그렇게 친숙한 지 알 수 있습니다 ... stackoverflow.com/questions/7403129/combining-not-selectors
BoltClock

"브라우저 방지"? 내가 계속 듣는 새로운 Google Ultron입니까?
Jonathan Dumaine 2014-08-04

답변:


262

시도해보십시오 #navigation ul li:not(:first-child):not(:last-child).


너 진짜 최고 다! 감사합니다!
Daniel

1
rofl, not()인터넷 검색 전에 이것을 시도하는 나의 어리 석음 : P 천재
SidOfc

1
그것은 틀 렸습니다. not (A and B)is not equal to (not A) and (not B), that would be (not A) or (not B). 작동하지 않습니다.
Hibou57

2
Salman Abbas가 말한 것이 옳지 않습니다. 쉼표를 생각하고 있습니다. #navigation ul li : not (: first-child), #navigation ul li : not (: last-child)
user847074

20

물론 작동 할 것입니다. 두 개의 'not'선택기를 사용해야합니다.

#navigation ul li:not(:first-child):not(:last-child) {

"첫 번째 자식이 아님"과 "마지막 자식이 아님"이라고 말하면서 첫 번째 자식 다음 줄을 계속합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.