View Full Version : XHTML Validation Errors

May 10th, 2010, 05:33 AM

I'm trying my hardest to clean up the code on my wife's photography blog. I designed it, and now am going back and fixing XHTML and CSS errors.

My problem is, I can't figure out what's causing the first XHTML error in he W3C validator. It says:

Line 103, Column 46: document type does not allow element "div" here
var contentString = '<div id="map_bubble">'+

It seems to maybe have some sort of issue with the quotation marks? Just a guess though.

Any help would be greatly appreciated! here's the URL: http://www.whitehillphotography.com/blog/

I know there are more errors, but I'm trying to start at the top and work down.


May 10th, 2010, 07:45 AM
Move the script to an external file or just add CDATA comments inside your script tag, like

<script type="text/javascript">
/* <![CDATA[ */
// content of your Javascript goes here
/* ]]> */
See http://javascript.about.com/library/blxhtml.htm

May 10th, 2010, 09:00 PM
That did it! Thanks! Onto the rest of the errors...

May 11th, 2010, 01:00 AM
OK, I'm down to only 1 error (from 64!)... but again, I'm stuck. If someone wouldn't mind running my page through the validator and giving me any insight, I'd be very appreciative!


the one error is:

Line 345, Column 358: there is no attribute "allowTransparency"
…no" frameborder="0" allowTransparency="true" style="padding: 0px 0px; border:n…

But there are multiple instances of that on the page, and this is the only one that cause an error. Any help?

May 11th, 2010, 02:06 PM
Anyone with some thoughts on that one error?

I've figured out that it only appears on the top most post. Some I'm guessing it's something going on above it that makes it think that that is an error? I just can't find it.

May 11th, 2010, 02:21 PM
Probably cause there is no such thing in HTML as "allowTransparency" no matter how many times you have it on that page.

May 12th, 2010, 06:24 AM
Wow... uber helpful drhowarddrfine, thanks!

But since that didn't really help too much let me rephrase my question:

Why would it not error for every instance on a page then? Why only the first instance?

And, apparently IE needs that bit of code. I guess it's a Microsoft Extension of HTML.

So, I guess my question needs to turn into, how can I get it to validate and still make it display properly in IE?

May 12th, 2010, 06:36 AM
allowTransparency is only there once, in the code for the iframe. There are a few alternatives, one requires you to use javascript by using document.getElementById along with setAttribute. You could also use down level revealed comments along with conditional comments.

<div class="facebook_like_button">
<!--[if IE]>
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.whitehillphotography.com%2Fblog%2F2010%2F05%2Fmurfreesboro-photographer-senior-rep-eva%2F&amp;layout=standard&amp;show-faces=true&amp;width=450&amp;action=like&amp;font=arial&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="padding: 0px 0px; border:none; overflow:hidden; width:450px; height:70px;"></iframe>
<!--[if !IE]>-->
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.whitehillphotography.com%2Fblog%2F2010%2F05%2Fmurfreesboro-photographer-senior-rep-eva%2F&amp;layout=standard&amp;show-faces=true&amp;width=450&amp;action=like&amp;font=arial&amp;colorscheme=light" scrolling="no" frameborder="0" style="padding: 0px 0px; border:none; overflow:hidden; width:450px; height:70px;"></iframe>
That will show the iframe without allowtransparency as an attribute to any browser but IE. In turn it will also allow it to validate although I really don't see this as being a big issue. Also we are trying to help you. No need to get snippy about any help you receive. drhowardfine was just telling you why it wasn't valid. Its not a valid attribute. It was made by microsoft to allow the backgrounds of iframes to show up.