2012-01-18 5 views
0

Я использую CSS и HTML. Я использую внешнюю таблицу стилей, а элемент «style», внутренний для html, переопределяет внешнюю таблицу стилей. Мой вопрос в том, что когда я помещаю html-комментарий внутри элемента «style», стиль не ovveride внешнего css. Однако, когда я использую комментарии css внутри элемента «style», это действительно работает. Html-комментарии принадлежат внутри html, а элемент «style» по-прежнему html, поэтому почему комментарии html внутри элемента «style» приводят к сбою переопределений?комментарии в html & css

Например:

<html> 
    <head> 
     <title>test</title> 
     <style> 
      <!-- body{background:#eee;} --> 
     </style> 
    </head> 
    <body></body> 
</html> 

Приведенный выше пример демонстрирует странное поведение применения стиля, несмотря на комментарий тегах.

Demo: http://jsfiddle.net/UyXhF/ (проверено в Chrome 16.0.912.75 Windows, 7)

+2

Можете ли вы показать пример? –

+1

Я не уверен, что нужен пример ... Вопрос, сформулированный просто: «Почему ограничители комментариев HTML не работают в тегах HTML-стиля?» –

+0

да, что сказал джозеф, извините за любую путаницу – samin

ответ

4

CSS не является языком разметки. Блок стиля внутри вашей HTML-страницы является автономной частью кода. Подобно javascript внутри блока сценария. Это не HTML. Таким образом, комментарии HTML не являются технически комментариями внутри блока стиля.

5

Использование/* Стиль */для комментария стиля и выше для HTML.

+2

Ответ Джеймса верен: /* комментарий */является CSS и должен использоваться внутри тегов стиля. html и должен использоваться внутри html. Если вы определяете тег javascript с HTML, вы также должны использовать/* */и // для комментариев. Помните, что вы определяете альтернативный фрагмент кода. Вы бы не поместили html-теги внутри стиля и скрипта, не так ли? :) Также вы должны использовать внешний CSS для отмены внутреннего CSS. А не наоборот. Это бессмысленно каскадно. – Eirinn

Смежные вопросы