Test the basic features of ":read-only", ":read-write" on the <input> element. In a fieldset, all elements that are not part of the legend are disabled if the fieldset is disabled.

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


PASS document.querySelectorAll("input:read-write").length is 4
PASS document.querySelectorAll("input:read-write")[0].id is "input1"
PASS document.querySelectorAll("input:read-write")[1].id is "input2"
PASS document.querySelectorAll("input:read-write")[2].id is "input3"
PASS document.querySelectorAll("input:read-write")[3].id is "input5"
PASS document.querySelectorAll("input:read-only").length is 2
PASS document.querySelectorAll("input:read-only")[0].id is "input4"
PASS document.querySelectorAll("input:read-only")[1].id is "input6"
PASS getComputedStyle(document.getElementById('input1')).backgroundColor is "rgb(255, 255, 255)"
PASS getComputedStyle(document.getElementById('input1')).color is "rgb(4, 5, 6)"
PASS getComputedStyle(document.getElementById('input2')).backgroundColor is "rgb(255, 255, 255)"
PASS getComputedStyle(document.getElementById('input2')).color is "rgb(4, 5, 6)"
PASS getComputedStyle(document.getElementById('input3')).backgroundColor is "rgb(255, 255, 255)"
PASS getComputedStyle(document.getElementById('input3')).color is "rgb(4, 5, 6)"
PASS getComputedStyle(document.getElementById('input4')).backgroundColor is "rgb(1, 2, 3)"
PASS getComputedStyle(document.getElementById('input4')).color is "rgb(0, 0, 0)"
PASS getComputedStyle(document.getElementById('input5')).backgroundColor is "rgb(255, 255, 255)"
PASS getComputedStyle(document.getElementById('input5')).color is "rgb(4, 5, 6)"
PASS getComputedStyle(document.getElementById('input6')).backgroundColor is "rgb(1, 2, 3)"
PASS getComputedStyle(document.getElementById('input6')).color is "rgb(0, 0, 0)"
PASS successfullyParsed is true

TEST COMPLETE

