2010-07-14 1 views
0

페이지가 지정된 DOCTYPE으로 서버 측에서 검색하는 방법이 있는지 궁금합니다. 페이지의 DOCTYPE에 따라 다르게 렌더링되는 사용자 정의 WebControl에 일부 HTML과 CSS가 있습니다. 확인할 수있는 Page 속성 또는 Response 속성이 있습니까?ASP.NET에서 DOCTYPE (Transitional 또는 Strict) 서버 측을 어떻게 감지합니까?

+0

doctype에 따라 다르게 렌더링해야하는 것은 무엇입니까? – TheCloudlessSky

+0

나는 margin-left/right가있는 div를 사용하여 둥근 모서리를 만들었습니다. DOCTYPE에서 DOCTYPE이 지정되지 않은 HTML 파일 에서처럼 마진이 작동하지 않습니다. – SAGExSDX

답변

1

컨트롤에서 열거 형 또는 부울 값을 사용하여 소비 페이지를 설정할 수없는 이유는 무엇입니까? (doctype이 페이지간에 변경되어야하는 것과 달리)?

+0

나는 이전 TABLE 기반 컨테이너 컨트롤을 가져 와서 마크 업이 적고 (더 나은) DIV 기반 컨테이너로 변경하여 이상적으로는 기능을 수행하고 변경 전과 동일하게 표시하는 것이 이상적입니다. 하지만 DOCTYPE을 전환으로 설정 한 모든 앱의 모든 페이지를 보장 할 수는 없습니다 – SAGExSDX

+0

그럼 내가 제안한대로하지 않습니까? 각 페이지마다 개별적으로 변수를 설정합니까? – TheCloudlessSky

+0

많은 페이지가있는 많은 앱이 있습니다. 이상적인 솔루션은 개발자가 변수를 관리 할 책임이있는 대신 자체 적응할 수있는 사용자 지정 WebControl을 갖는 것입니다. – SAGExSDX

0

그 이유는 DOCTYPE은 클라이언트 쪽 선언이며 ASP.NET 페이지의 컨트롤 구조를 사용하지 않기 때문입니다 (페이지의 html 요소 외부에 있기 때문에). @TheCloudlessSky와 동의하고 컨트롤에 설정을 전달합니다. DOCTYPE을 감지하는 유일한 방법은 파일 자체를 열고 첫 번째 줄을 읽는 것입니다. 컴파일 된 웹 응용 프로그램에도 유용하지 않습니다.

DOCTYPE이 페이지간에 변경되는 이유는 무엇입니까?

+0

모든 앱의 모든 페이지는 동일한 Visual Studio DOCTYPE을 사용하는 것이 가장 이상적입니다. 나는 또한 다른 개발자가 아마도 그것을 변경하는 것을 볼 수있다. 왜? 나는 모른다. Devs는 때때로 재미있는 일을합니다. ;) – SAGExSDX

+0

솔직히 사용자 컨트롤이 XHTML을 기반으로 일관된 의미 론적 마크 업을 생성하는 것이 가장 좋을 것입니다. HTML4, XHTML1.0, XHTML1.1 또는 HTML5를 사용하는 렌더링을 손상시키지 않습니다. –

0

DocType은 페이지마다 변경되지 않지만 때때로 액세스 할 필요가 있습니다. 나는이 데이터를 얻으려고 인터넷을 수색하고있다.

나는 제대로 디버그 모드에 나와 있지만, 같은 것을 사용하고 있기 때문에 먼저는 HTMLElement (DomElement.data)에가 알 -

dElementList [STR] .DomElement.data을;

이것은

내부의 데이터가 내가 존재에 얻을 필요가있는 유일한 장소, 데이터를 것으로 보인다 것은 가망이 없습니다. 특정 요소 유형에 필요한 캐스트가 있다고 의심하지만 아직 건너 왔습니다. DomElement에 대한 MSDN 예제는 요소에 액세스하지 않지만 해당 코드는 기본적으로 내 것과 동일합니다. dElement는 사전이고, str은 요소의 ID 또는 태그입니다 (이 경우 해당 태그의 '!'). Dictionary는 HTMLElement를 반환합니다.

아무도 DomElement.data에서 어떻게 알 수 있습니까?