首尾子节点:firstChild & firstElementChild / lastChild & lastElementChild
兄弟子节点:previousSibling & previousElementSibling / nextSibling & nextElementSibling
兼容问题:都是通过判断来解决兼容问题