Your html code should look like:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> </head> <body> </body> </html>
To insert title, meta and link as children of head using beforeEnd you can use:
Sub BeforeEnd()
Dim strHTML As String
Dim objHead As IHTMLElement
Set objHead = ActiveDocument.all.tags("head").Item(0)
strHTML = _
vbCrLf & _
vbTab & _
"<title>" & _
vbCrLf & _
vbTab & _
"</title>" & _
vbCrLf & _
vbTab & _
"<meta>" & _
vbCrLf & _
vbTab & _
"<link>"
objHead.insertAdjacentHTML "beforeEnd", strHTML
End Sub
Your HTML code will be:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title> </title> <meta> <link> </head> <body> </body> </html>
Other methods to accomplish the same thing:
innerHTML, all 3 children at once
innerHTML, Child1, Child 2, Child3
innerHTML, Child3, Child2, Child1
innerHTML, Child1, Child3, Child2 using innerHTML
innerHTML, Child1, Child2, Child3 using outerHTML
insertAdjacentHTML "beforeBegin, strHTML
insertAdjacentHTML "afterBegin, strHTML
insertAdjacentHTML "afterEnd, strHTML