Facebook Connect and their "Social Widgets" documentation mention that you need to add an xmlns
attribute to your <html>
tag on the page where it will be used.
I understand that xmlns
is for XML Name-spacing, and have used such with XHTML before. However, with all the recent talk about HTML4 / HTML5, without having read through the entire spec, is the xmlns
attribute compatible with valid HTML5? What about HTML4?
If I've looked over an obvious mention of this in the docs, I'm sorry... point it out?
EDIT: A couple docs references/cites:
The below answer is from 2009. It discusses the state of HTML 5 at the time.
The above question is also from 2009. It discusses the state of the Facebook APIs at the time.
Neither are relevent for 2017.
It's an attribute.
Sort of. It is completely meaningless, but allowed so people can be lazy when porting XHTML.
Remember that HTML 5 is an unfinished draft. These things are subject to change. Don't rush into using HTML 5 unless it offers a serious benefit.
Not at all.
I've had the same problem using HTML5 for facebook connect and solved with a small hack on Facebook's JavaScript API.
Read my blog: http://fbml5.blogspot.com/
The method on the dev wiki (mentioned by Jesus Saldivar) has two things which I don't like:
Please tell me what you think of it.
Another Option
"Using the Facebook JavaScript Client Library, you can render XFBML inline on a Facebook Connect site or iframe canvas page, without using XFBML tags."
http://wiki.developers.facebook.com/index.php/Using_HTML_to_Imitate_XFBML
Actually, the first cited reference discusses adding a xmlns:fb="http://www.facebook.com/2008/fbml" attribute. This is not valid HTML5. It is valid XHTML5. The second cited reference does not mention an xmlns attribute at all.
Note though, that although it is not valid HTML4 or HTML5, it will do no harm.