2017-01-04 3 views
2

Как различные браузеры обрабатывают несколько выбранных вариантов в такой ситуации, как показано ниже, где программист ошибочно или неосознанно выбирает несколько параметров по умолчанию в их HTML:Как различные браузеры обрабатывают несколько выбранных опций

<select> 
     <option selected="selected"> Option 1</option> 
     <option>Option 2</option> 
     <option>Option 3</option> 
     <option selected="selected">Option 4</option> 
     <option>Option 5</option> 
     <option>Option 6</option> 
    </select> 

В настоящее время момент у меня есть доступ к chrome, firefox, opera и safari, и все они, похоже, единодушно выбирают option 4, вероятно, потому, что браузер загружается сверху вниз. Тем не менее, лучше быть в безопасности, чем сожалеть. В браузере мы все любим ненавидеть i.e IE (не каламбур) или Microsoft край, они разные?

+0

Что вы подразумеваете под «, когда пользователь ошибочно или неосознанно выбирает несколько параметров по умолчанию в своем HTML» - что вы делаете, что позволит пользователю достичь этого? Не можете ли вы применить проверку на своем конце, чтобы предупредить пользователя о том, что они допустили ошибку? –

+1

Также спецификация [диктует] (https://www.w3.org/TR/html5/forms.html#attr-option-selected): «Элемент select, чей множественный атрибут не указан **, не должен иметь больше, чем один элемент дочернего элемента с выбранным набором атрибутов ** ". Разработчик браузера полностью реализует, как это обрабатывается (это может реально измениться без предупреждения между версиями одного и того же браузера, не говоря уже о разных браузерах). –

+0

Я уточню, что в секунду. Мой вопрос касается не пользователя веб-сайта, а пользователя языка HTML :-) –

ответ

1

Согласно Browserling, он показывает те же результаты в IE 9, и я также тестировал его на своем ПК. Microsoft Edge также показывает те же результаты. Я думаю, что каждый браузер интерпретирует это по-своему. В соответствии со спецификацией W3:

Элемент select, чей множественный атрибут не указан, не должен содержать более одного элемента варианта потомства с выбранным набором атрибутов.

Если вы хотите идти в более подробно об этом, поставил код, предусмотренный на JSFiddle и попробовать ссылку в Browserling или Browsershots.

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