Что действительно “семантически исправляет” средний?

Здесь переписывание из Сценария Jeffs для PHP:

define("SECOND", 1);
define("MINUTE", 60 * SECOND);
define("HOUR", 60 * MINUTE);
define("DAY", 24 * HOUR);
define("MONTH", 30 * DAY);
function relativeTime($time)
{   
    $delta = time() - $time;

    if ($delta < 1 * MINUTE)
    {
        return $delta == 1 ? "one second ago" : $delta . " seconds ago";
    }
    if ($delta < 2 * MINUTE)
    {
      return "a minute ago";
    }
    if ($delta < 45 * MINUTE)
    {
        return floor($delta / MINUTE) . " minutes ago";
    }
    if ($delta < 90 * MINUTE)
    {
      return "an hour ago";
    }
    if ($delta < 24 * HOUR)
    {
      return floor($delta / HOUR) . " hours ago";
    }
    if ($delta < 48 * HOUR)
    {
      return "yesterday";
    }
    if ($delta < 30 * DAY)
    {
        return floor($delta / DAY) . " days ago";
    }
    if ($delta < 12 * MONTH)
    {
      $months = floor($delta / DAY / 30);
      return $months <= 1 ? "one month ago" : $months . " months ago";
    }
    else
    {
        $years = floor($delta / DAY / 365);
        return $years <= 1 ? "one year ago" : $years . " years ago";
    }
}    
30
задан Landon Kuhn 18 August 2009 в 15:21
поделиться

6 ответов

Правильная маркировка

Это означает, что вы называете что-то тем, чем оно является на самом деле. Классический пример: если что-то является таблицей , она должна содержать строки и столбцы данных. Использовать это для макета семантически неверно - вы говорите «это таблица», когда это не так.

Другой пример: список (

    или
      ) обычно следует использовать для группировки похожих элементов (
    1. ). Вы можете использовать div для группы и для каждого элемента и стилизовать каждый диапазон , чтобы он находился на отдельном отметьте маркер, и он может выглядеть так, как вы хотите. Но «это список» дает больше информации.

      Соответствует идеалу HTML.

      HTML означает «язык гипертекста разметки »; его цель - разметить или маркировать ваш контент. Чем точнее вы его разметите, тем лучше. В HTML5 вводятся новые элементы для более точного обозначения общих частей веб-страницы, таких как верхние и нижние колонтитулы.

      Делает их более полезными

      Вся эта семантическая маркировка помогает машинам анализировать ваш контент, что помогает пользователям. Например:

      • Знание ваших элементов позволяет браузерам использовать разумные значения по умолчанию для того, как они должны выглядеть и вести себя . Это означает, что вам потребуется меньше работы по настройке и с большей вероятностью вы получите согласованные результаты в разных браузерах.
      • Браузеры могут правильно применять ваш CSS (Каскадные стили Таблицы), описание того, как должен выглядеть каждый тип контента. Вы можете предложить альтернативные стили, или пользователи могут использовать свои собственные; до тех пор, пока вы помечаете свои элементы семантически, можно будет использовать такие правила, как «Я хочу, чтобы заголовки были большими».
      • Программы чтения с экрана для слепых могут помочь им заполнить форму более легко, если логические разделы разбиты на fieldsets с одной легендой для каждого. Слепой пользователь может услышать текст легенды и решить: «О, я могу пропустить этот раздел», точно так же, как зрячий пользователь, прочитав его.
      • Мобильные телефоны могут переключаться на цифровую клавиатуру, когда они видят ввод формы type = "tel" (для номеров телефонов).
46
ответ дан 27 November 2019 в 23:20
поделиться

«Семантически правильное использование элементов означает, что вы используете их для того, для чего они предназначены. Это означает, что вы используете таблицы для табличных данных, но не для разметки, это означает, что вы используете списки для перечисления вещей, сильные и em для выделения текста и тому подобное. "

From: http://www.codingforums.com/archive/index.php/t-53165.html

10
ответ дан 27 November 2019 в 23:20
поделиться

Семантика в основном означает «Изучение значения».

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

В (x) HTML, есть определенные теги, которые придают смысл содержанию, которое они содержат. Например:

Тег H1 описывает данные, которые он содержит, как заголовок уровня 1. Тег H2 описывает данные, которые он содержит, как заголовок уровня 2. Подразумеваемое значение этого состоит в том, что каждый H2 под H1 каким-то образом связан (то есть заголовок и подзаголовок).

Когда вы кодируете семантическим способом, вы в основном придаете значение данным, которые вы описываете.

Рассмотрим следующие 2 образца семантического VS несемантического:

<h1>Heading</h1>
<h2>Subheading</h2>

VS несемантического эквивалента:

<p><strong>Heading</strong></p>
<p><em>Subheading</em></p>

Иногда вы можете услышать, как в дебатах люди говорят: «Вы»

19
ответ дан 27 November 2019 в 23:20
поделиться

Элементы HTML имеют значение. «Семантически правильный» означает, что ваши элементы означают то, что должны.

Например, ваши списки определений представлены списками

в коде, ваши сокращения - s и т. Д.

2
ответ дан 27 November 2019 в 23:20
поделиться

Это означает, что элементы HTML используются в правильном контексте (в отличие от таблиц, используемых в целях проектирования), классы CSS имеют понятные человеку имена, а сам документ имеет структуру, которая могут обрабатываться клиентами, не являющимися браузерами, такими как программы чтения с экрана, автоматические парсеры, пытающиеся извлечь информацию и ее структуру из документа и т. д.

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

1
ответ дан 27 November 2019 в 23:20
поделиться

Я никогда не слышал об этом только в контексте CSS, но когда речь идет о CSS и HTML, это означает использование правильных тегов (например, отказ от использования тега таблицы для не- табличные данные), предоставляя правильные значения для класса и идентификатора, которые идентифицируют содержащиеся данные (с использованием микроформатов в зависимости от ситуации) и т. д.

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

0
ответ дан 27 November 2019 в 23:20
поделиться