2011-04-25 4 views
1

덜 범위를 무시할 수있는 방법이 있습니까? 그것은 짜증나게되고있다. 기본적으로 배경, 테두리 등을 정의하는 .text-box가 있습니다. 그런 다음 하위 섹션에는 margin-top : .text-box {margin-top : 10px}를 추가하는 일회성 변경이 있습니다. 이제는 그 섹션에서 .text-box를 사용할 수없고 원래 상자 스타일을 얻을 수 없습니다. 대신 내가 얻는 것은 마진 - 탑이다. 어떻게 계층 구조의 정의를 더 높일 수 있습니까? 나는 그것을 함수로 만들 수 있고, 두 곳에서 그 함수를 호출 할 수 있다고 생각하지만, 나는 덜 사용하고있다. 나는 덜하고 싶다. 그리고 KISS. PHP에서는/prefix를 사용하거나 C++에서 :: prefix를 사용하여 전역 네임 스페이스에 접근합니다.덜 문제 (범위 및 명시 적 노드 이름)

또한 프로토 타입 작성을 위해 노드 이름을 사용하는 정의가있는 것처럼 보이지 않습니다. 즉, ul.products를 선언 할 수없고 ul.categories {ul.products}를 사용합니다. 노드 이름을 다시 사용하려면 노드 이름을 생략해야합니다. 의미 : .categories {.products}. 이것이 감독/불가능인가?

감사

+0

덜 문제가 많은 문제보다 낫습니다! – coreyward

+3

추가 답변. 더 적은 무언가 코멘트. :피 –

답변

2

확인 그래서 예를 들어, 당신이 당신의 믹스 인 정의있어 가정 해 봅시다 :

.text-box { 
    background: #eee; 
    border: 1px solid #ccc; 
    color: #333; 
    margin-top: 5px; 
} 

지금 당신은 단순히이 작업을 수행 한 후, 속성을 추가하거나 일부 항에서 그것을 수정할 :

div.content { 
    div.sub_section { 
     .text-box; 
     margin-top: 10px; // this will override 5px defined in the mixin. 
    } 
} 

... 믹스 인을 제자리에두고 추가해야하는 일부 속성을 추가합니다 (믹스 인 자체의 모든 속성을 덮어 쓰지만 재정의 속성은 d mixin이 호출 된 후 이루어집니다.

출력 CSS 파일에 두 개의 선언을 만듭니다 (.sub_section에서 정의한 믹스 인이 뒤 따르게됩니다). 그렇지 않으면이 문제에 대한 해결책을 알지 못합니다. 파라 메트릭 믹스 인을 정의하는 것보다 ..

-

두 번째 문제 - 나는 적은 목적에 범위를 제한 정의를 지원하지 않습니다 ... 당신이 정말로 특정 믹스 인이되고 있음을 알 필요가 있다면 생각 특정 태그에 의해 사용되는 경우, 나는 이렇게 처리 할 것입니다 :

.ul_products { ... } 
.ul_categories { .ul_products; ... } 

ul.categories { .ul_categories; } 

당신은 또한 번들을 정의하고 거기에서 물건을 호출 할 수 있습니다

#ul { 
    .products { ... } 
    .categories { ... } 
} 

ul.categories { #ul > categories; } 

을 내가 그것을 잘 가지고 희망을 ..?

관련 문제