fix: head.ready not triggered because of wrong asset.state for css

Some browsers (e.g. Safari) don't fire the onload event for loaded css,
so the asset.state will never updated to LOADED. If allLoaded() is
called the css assets are in state = LOADING. This PR adds a workaround
for this issue without using the img hack (#240)