Подтвердить что ты не робот

Условное форматирование в HTML-тегах

Есть ли опция для использования IF-ELSE в HTML-тегах

 <if true>  do something   </if>  
 <else>     do something   </else>
4b9b3361

Ответ 2

Не быть педантичным, но HTML - это язык разметки и не полезен для условной логики.

Говоря это, похоже, что вы ищете немного javascript. Если бы вы могли добавить немного более подробные сведения к своему вопросу, я мог бы подробнее рассказать о том, как вы можете использовать javascript для выполнения задач с условной логикой.

Ответ 3

HTML был разработан для компоновки документов, поэтому noscript и noframes находятся примерно так же близко, как и HTML, чтобы обрабатывать условные обозначения. Вы могли бы подойти к этой проблеме с помощью javascript.

<div id='if-part' style='visibility: hidden;'>do something</div>
<div id='else-part' style='visibility: hidden'>do something</div>

<script>
    var node;
    if(true) {
        node = document.getElementById('if-part');
    }
    else {
        node = document.getElementById('else-part');
    }
    node.style.visibility = 'visible';
</script>

Конечно, это работает только в том случае, если у клиента включен javascript.

Ответ 4

Условная визуализация HTML не является новой концепцией, но она не может быть выполнена исключительно с использованием HTML. Вам нужно будет использовать скрипт на стороне клиента или код на стороне сервера, чтобы обеспечить условную логику, которая сделает ваш HTML соответствующим образом.

Ответ 5

Вы когда-нибудь подписали электронное письмо? Все ваши java script удаляются Google. Кроме того, gmail на android не поддерживает медиа-запросы, а разные версии Outlook имеют свои собственные причуды. У вас нет выбора, кроме как использовать условный HTML, если вы хотите получать сообщения электронной почты, которые хорошо отображаются на разных почтовых клиентах.

Это очень похоже на второй пример:

<!--[if gte mso 9]>
    <style type="text/css">
    /* Your Outlook-specific CSS goes here. */
    </style>
<![endif]-->

Однако, если вы не собираетесь использовать почтовый клиент, я должен согласиться со всеми остальными и сказать, что вы должны использовать Java Script.

Ответ 6

Как было сказано в других сообщениях, HTML не поддерживает условную логику. Здесь у вас есть два варианта:

1) Генерируйте HTML динамически с использованием таких технологий, как PHP или XSLT

2) Измените HTML DOM после факта с помощью Javascript

Ответ 7

Принимая во внимание Кевина Лони и его решение javaScript, мы также должны рассмотреть CSS-условия. Если условие основано на дизайне, основанном на восприятии браузера, то javaScripting можно обойти:

<div class='if-part'>show something</div>
<div class='else-part'>show something</div>

"Покажите что-нибудь" в том смысле, что вы просто скрыли бы условие, которое не применяется. В приведенном ниже примере "if-part" отображается только на мобильных устройствах. "else-part" отображается на больших экранах.

@media screen and (max-width:767px){
    .if-part{display:initial;}
    .else-part{display:none}
}
@media screen and (min-width:768px){
    .if-part{display:none;}
    .else-part{display:initial}
}

Этот ответ предлагает еще больше вариантов CSS для рассмотрения.