Esatto, e` proprio cosi` che deve essere interpretato.Sembra quasi che la direttiva 'width:100%' la interpreti come '100% dell'area del blocco padre'...
Il blocco <html> si riferisce a tutta la finestra del browser.
Invece il secondo blocco (quello che deve occupare il "resto dello spazio"), non deve avere larghezza 100%. Dovrebbe funzionare senza definire la larghezza.
Puoi anche provare a definire
left:0; right:0;
ma non tutti i browser interpretano correttamente una tale coppia di dichiarazioni.