ASP.Net의 다음 버전에서는 컨트롤에 정확한 클라이언트 ID를 지정하기가 더 쉽습니다.
인라인 스타일
<asp:Label runat="server" ID="MyLabel" style="..." />
당신이 후 질문에서 언급 한 바와 같이
그냥, CSS 클래스를 사용 CssClass : 지금이 순간, 당신은이 문제를 해결하기 위해 몇 가지 옵션이 있습니다. 당신이해야 할 일이 있다면 그것들을 독특하게 만들지 못하게 할 수는 없습니다.
당신이 당신의 스타일 시트를 작성할 때 스타일 시트
를 제공 클라이언트 ID에 대한 파일에 자리를 떠나 핸들러를 작성합니다. 그런 다음 http 핸들러를 사용하여 각 요청에서 실제로 렌더링 된 ID를 대체하십시오.이는 스타일 시트 요청이 html 페이지 요청과 별개이기 때문에 정확히 간단하지는 않지만 분명히 언급할만한 가치가 있습니다.
<div id="MyContainer"><asp:Label ID="MyLable" runat="server" /></div>
을 그리고 당신의 스타일 :
그 범위가 특정 명명 컨테이너 내에서 고유 경우 레이블, span 태그로 렌더링하기 때문에 컨테이너
를 사용하여 당신은 그런 식으로 선택할 수 있습니다 시트 :
#MyContainer span { /*...*/ }
는 컨테이너 + 클래스를 사용
컨테이너가 충분히 특정하지 않은 경우, 당신은 단지 해당 컨테이너 내에서 범위를 좁힐 클래스를 사용할 수 있습니다
<div id="MyContainer"><asp:Label ID="MyLable" runat="server" CssClass="MyClass"/></div>
와 스타일 시트 :
#MyContainer span.MyClass { /*...*/ }
감사합니다,하지만 경우 나는 css가 .css 파일에 있기를 원한다. 이것은 CSS 파일의 전체 아이디어가 아니며, 디자인 (= 스타일)에서 컨텐츠를 분리합니까? –
사실, 그렇지만 미친 이름 지정 규칙이있는 CSS 파일이 있습니다. div 또는 span에 특정 레이블을 래핑하여 위치 지정을 적용 할 수 있습니까? 나는 .NET 4.0이 마침내 ClientID가 무엇으로 렌더링 될지를 지정할 수있게 해줄 것이라고 믿는다. –