2010-01-30 2 views
1

나는 외부 CSS 파일에서 그것을하고 싶다. 내가 주 CSS의 DIV 번호 abc 방송이 있지만이 자바 스크립트를 사용하지 않는 경우에만의 div 내가 디스플레이 전혀 설정되어 있지하려는자바 스크립트가 사용 중지 된 경우 모든 X/HTML 요소에 CSS 스타일을 지정하는 방법은 무엇입니까?

+4

CSS는 자바 스크립트에 의존하지 않습니다. 다시 질문 할 필요가 있다고 생각합니다. 이해가되지 않습니다. 또한 다른 질문을 보면서, 제목! = 질문. –

+0

정확하게하고 싶은 일에 대해 자세히 설명해 주시겠습니까? JavaScript와 정확히 무슨 관계가 있습니까? –

답변

3

어떻게

<noscript> 
    <style type="text/css"> 
    div#abc { display: none; } 
    </style> 
</noscript> 

어떻습니까? 외부 CSS 파일에서 실제로이 작업을 수행하려면 no_js.css으로 이동하고 style 속성 대신 link 요소에서이 파일을 참조하십시오.

그러나 대부분 반대 방향으로 이동하는 것이 더 편리합니다. 비활성화 된 JS의 기본값을 설정 한 다음 JS가 클래스 이름을 변경하여 스타일을 업데이트하도록합니다. jQuery 예 :

$(document).ready(function() { 
    $('.fancy_user_interface_element').addClass('additional_js_style_class'); 
}); 
+0

괜찮지 만이 코드를 에 넣어야합니까? –

+0

글쎄, 그것은'head' (또는 body의'style' 엘레멘트)에서도 작동합니다. 페이지의 유효성을 검사 할 의무가 있다면 제 대답의 두 번째 부분을 살펴 보시기 바랍니다. – Boldewyn

+0

또는 JS를 사용하여 요소 ('document.write()'또는 DOM 메소드)를 만들 수 있습니다. 이런 식으로 그들은 JS가없는 문서에조차 없다. – Boldewyn

0

표시 할 요소를 noscript 태그 안에 넣으면 javascript가 비활성화 된 경우에만 표시됩니다.

1

나는 div 스타일을 만들 것이다. = "display : none;" 기본적으로 javascript로 보여줍니다.

<div id="abc" style="display: none;"> 
... 
</div> 

<script type="text/javascript"> 
    $(function() { 
     $('#abc').show(); //using jQuery 
    }); 
</script> 

이렇게하면 javascript를 사용하도록 설정하지 않으면 div가 표시되지 않습니다. 인라인 CSS를 사용하여 보여 주었지만 CSS 클래스를 사용하여이를 수행하고 단순히 요소에서 클래스를 제거 할 수도 있습니다.

<style> 
    .requires-javascript { display: none; } 
</style> 

<div id="abc" class="requires-javascript"> 
    ... 
</div> 

<script type="text/javascript"> 
    $(function(){ 
     $('.requires-javascript').removeClass('requires-javascript'); 
    }); 
</script> 

이렇게하면 자바 스크립트가 필요한 페이지의 모든 요소에 대해 단일 jQuery 문을 사용할 수 있습니다.

+0

그래, 좋은 생각이야. 나는이 방법이

0

자바 스크립트에서 규칙 스타일을 숨김 상태에서 숨김 상태로 설정하면됩니다. CSS가 항상 해당 요소를 숨김으로 설정하도록하십시오. 자바 스크립트가 해제되어 있으면 숨김이 해제되지 않으므로 CSS에 의해 숨겨집니다.

관련 문제