tjholowaychuk: side note you can use document.createRange() and createContextualFragment() for that