Document.getElementById () zwraca element o nazwie równej podanemu id

Wspomniałem wcześniej wto więc o zabawnym zachowaniu w IE6 / 7 (i niektórych wersjach Opery) w tymdocument.getElementById może znaleźć element, któregoname atrybut jest zdefiniowany, ale nieid atrybut, taki, że

function f() {
    document.getElementById("a1").value = ...;
}
...
<input name="a1" ...></input>

faktycznie działa w tych wersjach.

Przeszukałem znalezioną siećten raport o błędzie Chris Bloom, w którym użytkownik o nazwisku Milo van der Leij wskazuje następujące rzeczy (jak go polecił wta specyfikacja w3c):

W ich obronie: „Atrybuty id i name mają tę samą przestrzeń nazw”.

Co to znaczy, że atrybuty id i name mają tę samą przestrzeń nazw? Dlaczego ten warunek byłby wystarczający dla IE6 / 7 / Opera implementującego to zachowanie w ich silniku JS?

questionAnswers(1)

yourAnswerToTheQuestion