I have recently been asked to convert a website by removing all of the tables and replacing with div's.
I have started to do this and I have also been asked to get the site validated to W3C standards.
I have moved the homepage into a testing folder and started to convert it (very long winded way of doing it at the moment).
However, when I try to validate the site I am getting errors saying that some div id's are already defined. Now I need these to be repeated as there are a couple of repeating tables (now areas of div's) that have the div's repeating. the main thing behind the divs are that they set the widths of each column.
What you are describing is the very purpose of the class attribute. Turn those repeated ids into classes in the HTML and CSS files and you should be one important step closer to standards.
Thanks. It has worked. Changed all my id's to class's and of course changed the css's to reflect this and it has passed first time now. Great.
On one of my pages I have a scrolling text at the top. this is like a marquee except It was developed as a javascript element. however this keeps flagging error in the validation.
Does anyone have a marquee like bit of code that would pass validation.
I also have another bit of javascript that keeps saying that the closing tag is missing yet it is there!!
Is it my site that it doesn't like or is it javascript code that cannot be validated?
<a href="contact">Contact Arnold Swimming Club</a>
| Site by DA <img src="assets/images/DA_logo.gif" class="inline"
alt="Website By David Adam Fortescue -
DA Websites" /></small></div><!-- here -->
Sorry, the main script that I seem to be having problems with are those on two other pages. The marquee problem I have sorted and implamented a new marquee.
For the first page you linked to in your last post...
One problem is that you are including a link tag (and <a> element) inside of an input element - which is not allowed. There are about 6 other cases where you have used <b>, <i>, <br /> and a number of other tags INSIDE of input elements. None of these are valid code and they will all have to go.
Another problem is that you have not properly terminated your CDATA tags for the script at the bottom of the page. CDATA is terminated with ]]> but you have used >>>
I haven't really looked at the other page yet but I imagine that the problems are similar.
You spotted the error in the code for the first link. I have fixed that but the page still does not validate. I have come to the conclusion that it is the code that is in the value of the input field. This however is just data pulled via PHP from a MySQL database that is causing the error. however this is due to be changed in about a month so the page (fingers crossed) will validate then.
As for the second link. The error here was a embeded flash object. When the code had been put into the page it still had the "<embed>" tags which was causing it not to validate. However after removing these and having a play with the object tags the page now validates (and still works!).
Thank You Rowsdower. Your help has been amazing and the site. in just a couple of days has gone from a huge stress to a fully validated site.
character ";" not allowed in attribute specification list
for (i=0;i<documentCount;i++)
Another:
element "documentCount" undefined
for (i=0;i<documentCount;i++)
Apparently, it does not like javascript for loops, and I guess, but don't know, that it wants you to have every variable formally initialized. But what would be the point of setting var i=0 before every for(i=0) loop?