Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Add an attribute to the <HTML> element in asp.net?

I would like to add two additional xml namespaces to the <HTML> element in asp.net:

take:

<html xmlns="http://www.w3.org/1999/xhtml" >

to make (adding facebook open graph namespaces):

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:og="http://ogp.me/ns#"
      xmlns:fb="http://www.facebook.com/2008/fbml">

How would I access the <HTML> element in code behind and add a namespace?

like image 764
FiveTools Avatar asked Dec 16 '22 14:12

FiveTools


2 Answers

You can do it just like any other element. In your aspx just mark the html tag to be runat server:

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" id="html_tag" runat="server">

And in your code just add the attributes:

protected void Page_Load(object sender, EventArgs e)
{
   html_tag.Attributes.Add("xmlns:og","http://ogp.me/ns#");
   html_tag.Attributes.Add("xmlns:fb", "http://www.facebook.com/2008/fbmls");
}

This of course does not have to be done via code and can just be placed in your aspx unless you wanted to only include those attributes in certain conditions.

like image 89
brendan Avatar answered Jan 04 '23 06:01

brendan


You can do something like as below:

<html <%= GetTags() %> >

The GetTags function will be defined in your code behind file and should return a string which will be placed in html tag, so you can return the "tags" as string and it will appear in HTML tag.

But I am not getting your point of doing this from code behind. Why not just do it in the aspx itself?

like image 40
Ankur Avatar answered Jan 04 '23 07:01

Ankur