Tag: HTML

The Ultimate Web Design Gallery Resource

In case you haven’t noticed lately, there a LOT of web design galleries out there. I’d always kept bookmarks for the galleries I’d come across but recently while looking at one I noticed links to a lot of galleries that I hadn’t heard of before. So I thought it might be worthwhile to investigate just how many there were out there. I came across a few blog posts with links to galleries but rather than just adding to the list and then publishing it, I thought I’d do a bit more investigation and analysis.

More on The Ultimate Web Design Gallery Resource

Legends of Style Revised

When I wrote the original article on how to achieve cross-browser consistency when styling form legends, I noted that there was a bug in the way Firefox handled legends which required an additional div to be wrapped around the fieldset with positioning and other styling applied to the div rather than the fieldset. The bug appears to still have not been resolved, but as Thierry Koblenz pointed out in the comments on the original article, there is a way to achieve the same effect across browsers that doesn’t require the additional div.

More on Legends of Style Revised

HTML/CSS newbie FAQs

After spending a while on web development forums, you start to see the same questions being asked regularly. So here I’m going to answer some of these common beginner questions and hopefully save me typing answers out repeatedly in the future because I can just refer the poster to here or copy it myself. ;)

More on HTML/CSS newbie FAQs

HTML image no preload rollovers

Recognise this?


<script type="text/javascript">
<!--
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//-->
</script>
<a href="#" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('example','','/images/example_company_on.png',1)">
<img src="/images/example_company_off.png" alt="Example company" name="example" width="326" height="167"></a>

Chances are you do. Even if you don’t own a copy of Dreamweaver, it’s likely you would have come across the code it outputs for creating image rollovers in your travels looking at the code of other sites.

More on HTML image no preload rollovers

Tools for checking website accessibility

Following on from my last post in which I mentioned screenreaders (or alternatives) that people might like to try for checking their own sites’ accessibilty, and an earlier post in which I listed the extensions I use for web development with Firefox, I thought I’d also list the different tools I use for testing website accessibility.

More on Tools for checking website accessibility

Buttons – forgotten and immobile

Last year, Nick Cowie created a podcast on the <button> and how it is the “forgotten element”. Well, it seems that it is not only developers who have forgotten about it, but browser makers, or more specifically those making browsers for handheld devices, and the Open Mobile Alliance (OMA) (authors of the XHTML-MP specification) who have forgotten about it as well.

More on Buttons – forgotten and immobile

Centering a dropdown menu

Recently, I needed to create a centered version of the Suckerfish dropdown menu and realised that some significant modifications were going to be needed. This is because the method for getting the top level list items to sit in a row, on the same horizontal plane, is to use float: left. However, when you float elements, you can’t centre them unless you give them a width and use auto left and right margins.

More on Centering a dropdown menu

Dropdown low down

Dropdowns (horizontal) or flyout (vertical) menus abound on websites and come in many different flavours. They are also put together in a number of different ways, some done with javascript, some with ‘pure’ CSS and some a mixture of both.

More on Dropdown low down

Why does my content flow outside its box?

Usually this question is accompanied by: “It looks fine in Internet Explorer but not Firefox” and it’s usually because a height has been specified on the element in question.

More on Why does my content flow outside its box?

Don’t use IE as your primary testing browser

As mentioned in previous posts, I spend some time on web design-related forums so a lot of what I’ve written on this site has been in response to questions I see asked quite often. This post is not so much about a question, but a reaction.

More on Don’t use IE as your primary testing browser