Because they interact with different APIs.
Different browsers provide similar APIs in different ways sometimes, and usually web standards support differs between browsers.
Different browsers provide similar APIs in different ways sometimes, and usually web standards support differs between browsers.