Darryl Lyons’ Blog

AJAX, ColdFusion and Web technology…

Entries Comments



Month: May, 2006

IE7 fixes SELECT element

31 May, 2006 (21:00) | Browsers, HTML | By: Darryl Lyons

This is BIG news. I found out today that IE7 has finally fixed the age old problem with the SELECT element. Imagine my joy when I read at IEBlog that they have fixed it, and it is now being rendered by MSHTML.

The SELECT element is a windows control, and does not have a z-index. This usually presents itself as a problem when you try to place a DIV over a SELECT. There are various ways that people have been getting around this annoyance, including hiding the SELECT or using an IFRAME behind the DIV.

The new SELECT element in IE7 will still support Windows themes, so you don’t have to worry about that changing.

There are no plans to implement the DISABLED attribute on the OPTION element however (at least not in this version).

Use TABLE tags for AJAX applications

17 May, 2006 (20:49) | AJAX | By: Darryl Lyons

I’ve recently come the realisation that DIVs are just too much hard work when it comes to writing a stable, responsive and rapid user interface framework for AJAX-applications. Our large AJAX CRM application used DIVs and CSS Expressions heavily to achieve a “windows-like”, fluid user interface. Each time a new pane was added, so were a bunch of CSS rules with expressions in them (absolute positioned elements that reference other elements to set width, height, top, left, etc).

I’ve now gone back to the dark ages, and converted the entire thing to use good old tables. I can tell you, it is a LOT more responsive. A lot of people may not realise the CSS expressions are evaluated each time something happens in the UI. For example, if you move your mouse, then the CSS expressions are being evaluated. So you can quickly guess that if you’re adding more DIVs to the DOM with CSS expressions, you’re certainly not speeding things up!

I’ll also mention that I am talking about an “application” here — not a Web site, and our standard platform is Internet Explorer (HTA). You can argue all you like that I should be using DIVs for visual layout, but I think it is more important to use what works.

Tables are just easier and quicker…