HTML5 имеет новый глобальный атрибут hidden, который можно использовать для скрытия содержимого.
<article hidden>
<h2>Article #1</h2>
<p>Lorem ipsum ...</p>
</article>
CSS имеет правило display:none, которое также можно использовать для скрытия содержимого.
article { display:none; }
Визуально они идентичны. В чем разница семантически? Вычислительном?
Какие рекомендации следует учитывать при использовании одного или другого?
ТИА.
РЕДАКТИРОВАТЬ. На основании ответов @newtron (ниже) я сделал больше поиска. Атрибут hidden был горячо оспариван в прошлом году и (по-видимому) едва ли попал в спецификацию HTML5. Некоторые утверждали, что он избыточен и не имеет никакой цели. Из того, что я могу сказать, окончательная оценка такова: если я нацелен только на веб-браузеры, нет никакой разницы. (Одна страница даже утверждала, что веб-браузеры использовали display:none для реализации скрытого атрибута.) Но если я рассматриваю доступность (например, возможно, я ожидаю, что мой контент будет прочитан экранными программами), тогда есть разница. Правило CSS display:none может скрыть мой контент от веб-браузеров, но соответствующее правило арии (например, aria-hidden="false") может попытаться прочитать его. Таким образом, я согласен с тем, что ответ @newtron верен, хотя, возможно (возможно) не так ясен, как мне хотелось бы. Спасибо @newtron за вашу помощь.