Правильный способ маркировки элементов выбора группы [duplicate]

У меня такая же проблема в прошлом .. и я исправил ее через .htaccess файл

. Когда вы вносите изменения в конфигурацию php через .htaccess, вы должны поместить настройки в тег IfModule другое, что возникнет ошибка внутреннего сервера.

Это пример, он отлично подходит для меня:


   php_value upload_max_filesize 40M
   php_value post_max_size 40M

И это ссылка на php, если вы хотите понять больше. http://php.net/manual/en/configuration.changes.php

6
задан MEM 28 August 2012 в 18:47
поделиться

5 ответов

Вы не можете связать элемент label с более чем одним элементом управления. Это описано в определении label .

Вы можете дать каждому элементу select свою собственную метку.

. Лучший подход состоит в том, чтобы иметь одно текстовое поле ввода для даты. Тогда нет проблем с label. Это означает больше работы, так как вам нужно проанализировать сервер данных на стороне сервера, и вы также должны анализировать его на стороне клиента (для проверок, чтобы пользователь мог сразу же получать информацию о проблемах). Но это лучшее удобство использования (конечно, быстрее вводить дату, чем использовать три неуклюжих выпадающих меню) и более высокую доступность. Вам нужно определить формат даты и четко указать пользователю, что такое ожидаемый формат.

3
ответ дан Jukka K. Korpela 4 September 2018 в 07:06
поделиться

Проблема с использованием одной метки для всех трех полей ввода заключается в том, что не подозреваемый пользователь не узнает, какой из трех ячеек находится в центре внимания, потому что в каждом случае будет считываться один и тот же текст. Существует несколько подходов. Возможно, самым безопасным является наличие ярлыка для каждого окна, но скрыть эти ярлыки в левой части окна просмотра. Другая возможность, которая должна работать, но я не тестировал это:

<fieldset>
    <legend>Check in date</legend>
    <select id="day" aria-label="day">
      <option value="1">1</option>
      <option value="2">2</option>
      <option value="3">3</option>
      <option value="4">4</option>
    </select> 
    <select id="month" aria-label="month">
      <option value="1">1</option>
      <option value="2">2</option>
      <option value="3">3</option>
      <option value="4">4</option>
    </select> 
    <select id="year" aria-label="year">
      <option value="1">2012</option>
      <option value="2">2013</option>
    </select>
</fieldset> 
11
ответ дан Alohci 4 September 2018 в 07:06
поделиться

После ответа от @Alohci вы также можете использовать aria-labelledby и отменить ссылку на именование (, которая, по моему мнению, немного ближе к соглашению, которое вы искали ):

<label id="date">Check in date</label>
<select aria-labelledby="date">
    <!-- ... -->
</select> 
<select aria-labelledby="date">
    <!-- ... -->
</select> 
<select aria-labelledby="date">
    <!-- ... -->
</select>

Также обратите внимание, согласно на W3C на labelled-by:

Если текст ярлыка отображается на экране, авторам СЛЕДУЕТ использовать aria-labelledby и НЕ ДОЛЖЕН использовать aria-label. Используйте aria-label только в том случае, если интерфейс таков, что на экране нет видимой метки. При вычислении свойства доступного имени агенты пользователя имеют приоритет aria-labelledby по сравнению с aria-label.

8
ответ дан Dan Lugg 4 September 2018 в 07:06
поделиться

HTML5 input type="date" может быть полезен, особенно если вы используете блоки выбора месяца / дня / года, чтобы ограничить возможности выбора даты. Этот элемент ввода поддерживает атрибуты даты min и max, поэтому вы можете применить свои ограничения. Он не поддерживается старыми браузерами, но я видел, что смарт-файлы cookie используют jQueryUI datepicker в качестве прокладки (с помощью обнаружения возможностей для определения поддержки type="date", а затем загрузки и вызывая datepicker, только если он не поддерживается изначально).

1
ответ дан Jeromy French 4 September 2018 в 07:06
поделиться

Нет правильного пути; метка относится к одному элементу. Просто укажите его на первый.

<label for="day">Check in date </label>

Вы также можете использовать специально созданный <fieldset>, если вам нравится семантика, но я думаю, что это немного перебор. <input type="date">, вероятно, лучший вариант здесь, так как это один элемент, на который можно указать ваш <label>, более семантический и может быть несколько более дружелюбным, если вы реализуете хороший выбор времени, чтобы идти вместе с ним.

Если вы хотите придерживаться <select> s, попробуйте дать каждому атрибут title для доступности.

1
ответ дан Ry- 4 September 2018 в 07:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: