2009-03-13 10 views
1

내 질문 2 부분 :CSS 컨트롤 상속 - 다른 컨트롤 스타일 상속

1) CSS에서 다른 컨트롤의 특성과 스타일을 상속하는 방법이 있습니까?

IE :

#MyFirstControl 
{ 
    width: 100px; 
} 

#MySecondControl 
{ 
    width: MyFirstControl.styles.width; /* This doesn't work */ 
} 

2) 라벨 태그를 가정 다른 태그의 자식 컨트롤 다른 제어 형태를 부모/자식 계층이없는 완전 할 수 가정한다. width 특성은 "상속"또는 "자동"과 함께 작동하지 않습니다. 뭐가 문제 야?

IE :

<style> 
    div 
    { 
    width: 100px; 
    } 
</style> 

<div> 
    <!-- This label does what it wants for width. It's not the width of the containing div --> 
    <label style="width: inherit">Some Text</label> 
<div> 

답변

2

1 부 : 당신은 스타일을 제어하기 위해, 클래스 이름이 아닌 ID를 사용하려면 :

.control_a { 
    width: 100px; 
} 

<blah id='MyFirstControl' class='control_a'/> 
<blah id='MySecondControl' class='control_a'/> 

이것은 당신이 태그의 수를 통해 스타일을 공유 할 수 있습니다. 또한, 명심, 당신은 하나의 요소에 하나 이상의 클래스 이름을 사용할 수 있습니다 :이 수

.control_a { 
    width: 100px; 
} 

.red { background: #f00; }  
.blue { background: #00f; } 

<blah id='MyFirstControl' class='control_a red'/> 
<blah id='MySecondControl' class='control_a blue'/> 

단일 요소에 대한 스타일의 다양한 소스를 선택합니다.

+0

답장을 보내 주셔서 감사합니다. 나는 수업을 꽤 많이 사용한다. 나는 아무런 징조도주지 않았지만 CSS는 꽤 잘 알고 있습니다. 이것은 무엇보다 philisophical했습니다. 나는 컨트롤 속성에 대한 CSS 대 JavaScript 조작으로 문제를 해결하려고 시도했다. 고마워요! – Boydski

1

CSS "개체"를 상속하는 방법은 없습니다. 다른 태그 내부의 태그에서 스타일을 상속 할 수 있지만 스타일 자체가 아닌 상속하는 태그입니다. 태그를 다른 스타일로 배치하면 해당 스타일에서 상속됩니다.

많은 코딩 작업을 피할 수 있기 때문에 CSS 스타일을 객체로 처리하면 흥미로울 수 있지만 이질적인 유형의 객체에 적용 할 수있는 클래스를 만들 수 있으므로 태그에 여러 클래스를 적용 할 수도 있습니다. , 그것은 필요한 것보다 더 흥미 롭습니다.

두 번째 질문에 대해서는 확실하지 않지만 클래스 나 ID를 사용하지 않고 태그 이름에 적용한다는 사실과 관련이 있다고 생각합니다. 내가 뭔가를 알아낼 수 있는지 좀 더 알아볼 필요가 있습니다. ,

#MyFirstControl, #MySecondControl 
{ 
    width: 100px; 
} 

2) 내 IDE와 브라우저는 믿을 수있는 경우 :

0

1) CSS는 같은 스타일로 지정된 두 개의 분리 된 요소의 일반적인 측면을 가질 수 자체 기준을 허용하지 않기 때문에 inherit은 해당 컨텍스트에서 width에 유효한 값이 아니지만 그 이유는 확실하지 않습니다. 이것이 귀하의 사례가 효과가없는 이유 일 수 있습니다.