나는 선택하기 위해 노력하고있어 input
모든 요소 type
를 제외들 radio
과 checkbox
.
많은 사람들이에 여러 개의 인수를 넣을 수 있음을 보여 :not
주었지만 사용 type
하는 것이 어쨌든 작동하지 않는 것 같습니다.
form input:not([type="radio"], [type="checkbox"]) {
/* css here */
}
어떤 아이디어?
나는 선택하기 위해 노력하고있어 input
모든 요소 type
를 제외들 radio
과 checkbox
.
많은 사람들이에 여러 개의 인수를 넣을 수 있음을 보여 :not
주었지만 사용 type
하는 것이 어쨌든 작동하지 않는 것 같습니다.
form input:not([type="radio"], [type="checkbox"]) {
/* css here */
}
어떤 아이디어?
답변:
왜 : 두 가지만 사용하지 마십시오 :not
.
input:not([type="radio"]):not([type="checkbox"])
네, 의도적입니다
:
캐릭터 와 함께 "왜 ..."라고 말했습니다 .
input:not('.c1'), input:not('c2')
, 두 클래스가 모두 입력을 받아야하는 "and"상황으로 끝나게됩니다.
:not([attr],[attr])
CSV 형식에 대한 욕구도
프로젝트에서 SASS를 사용하는 경우이 믹스 인을 빌드하여 우리 모두가 원하는 방식으로 작동하도록했습니다.
@mixin not($ignorList...) {
//if only a single value given
@if (length($ignorList) == 1){
//it is probably a list variable so set ignore list to the variable
$ignorList: nth($ignorList,1);
}
//set up an empty $notOutput variable
$notOutput: '';
//for each item in the list
@each $not in $ignorList {
//generate a :not([ignored_item]) segment for each item in the ignore list and put them back to back
$notOutput: $notOutput + ':not(#{$not})';
}
//output the full :not() rule including all ignored items
&#{$notOutput} {
@content;
}
}
두 가지 방법으로 사용할 수 있습니다.
옵션 1 : 무시 된 항목을 인라인으로 나열
input {
/*non-ignored styling goes here*/
@include not('[type="radio"]','[type="checkbox"]'){
/*ignored styling goes here*/
}
}
옵션 2 : 변수에 무시 된 항목을 먼저 나열
$ignoredItems:
'[type="radio"]',
'[type="checkbox"]'
;
input {
/*non-ignored styling goes here*/
@include not($ignoredItems){
/*ignored styling goes here*/
}
}
두 옵션 중 하나에 대한 출력 CSS
input {
/*non-ignored styling goes here*/
}
input:not([type="radio"]):not([type="checkbox"]) {
/*ignored styling goes here*/
}
:not()
= 항목 당 6 자; '',
= 항목 당 3 자 @include
핫키에 할당해야하므로 입력 할 때 하나의 문자로 계산합니다. 기술적으로 나는 당신이 그들을 너무 싫어한다면 목록에서 작은 따옴표를 사용해야한다고 생각하지 않습니다. 그들은 편집자가 겁내지 않도록 도와줍니다. 이를 기반으로, 나는 여전히 내 길이 더 타이핑하는 효율적인 작성 방법이라고 생각합니다.
선택기에서 여러 인수를 사용하여 CSS 선택기 4부터 시작할 :not
수 있습니다 ( 여기 참조 ).
CSS3에서 : not selector는 하나의 selector 만 인수로 허용합니다. 레벨 4 선택기에서는 선택기 목록을 인수로 사용할 수 있습니다.
예:
/* In this example, all p elements will be red, except for
the first child and the ones with the class special. */
p:not(:first-child, .special) {
color: red;
}
불행히도 브라우저 지원은 제한적 입니다. 현재로서는 Safari에서만 작동합니다.
"cssnext"Post CSS plugin 을 설치하면 지금 사용하려는 구문을 사용하여 안전하게 시작할 수 있습니다.
cssnext를 사용하면 다음과 같이됩니다.
input:not([type="radio"], [type="checkbox"]) {
/* css here */
}
이것으로 :
input:not([type="radio"]):not([type="checkbox"]) {
/* css here */
}