html元素和dom元素區別?
HTML屬性和DOM屬性的區別:
1、對于瀏覽器引擎而言,并不存在"HTML標簽"這回事,本質是DOM節點對象,也不存在"HTML文檔"這回事,其本質是DOM節點對象組成的文檔樹。瀏覽器引擎才是實際存儲和渲染DOM節點對象的"大爺"。只是我們無法直接操作瀏覽器引擎,所以對這個本質并不熟悉(其實也不需要知道,但是得知道)。
2、DOM節點對象是唯一的,但操作DOM節點對象的數據,卻不止有一種方法。例如對于一個圖像的寬度:
HTML可以通過<img>的width屬性去定義;
JavaScript可以通過element.width去讀取和修改;
別忘了CSS,CSS也可以通過width屬性去修改。
HTML屬性和JavaScript的DOM對象的屬性,本質上都只是影響DOM節點對象數據的眾多理由之一。
多個原因影響同一個DOM節點的實質數據(多對一),請務必你記住這個本質理由。