I spent this past weekend performing a major upgrade of my home
In addition to a motherboard problem, the primary hard drive had slowed
crawl, making even the simplest of tasks an excruciating
The hard drive issue manifested itself so gradually that I just assumed
machine had run that slowly all along. When a clean install of Windows
took 15 minutes to boot up, however, I knew there was something
wrong. A new
hard drive both cured the problems and emptied my bank account very
Now that my PC isn't dead slow anymore, I can afford to run a few
"non-essential" applications, like an RSS reader! In the past
buttons all over our site. You can now subscribe to RSS feeds and
be notified of new content published on SitePoint -- be it a blog entry,
article, or a forum thread!
Don't know your RSS from your elbow? Don't sweat it! SitePoint wordsmith
Nathan Matias has put together a short run-down of what RSS is and how
can use it. Get Off Your
and read it!
Editor, The SitePoint Tech Times
The State of XForms
Back in the
Tech Times #53, I introduced XForms as the latest candidate
to come out of the W3C. I explained the advantages it had over HTML
and even showed a simple example of how XForms work.
At the time, the media buzz surrounding XForms came from the fact that
Microsoft was building something called XDocs into its upcoming Office
software. Many attributed Microsoft's refusal to endorse XForms to
similarities that the recommendation bore to XDocs.
Over a year later, Office 2003 has been released, XDocs is now called
InfoPath, XForms has become a full-fledged W3C
recommendation, and the fine folks at x-port.net have just released
formsPlayer 1.0, a free plug-in for Internet Explorer that fully
with the XForms standard.
So why aren't we seeing XForms springing up all over the Web? After all,
most popular Web browser in the world now supports them with a free
Due to the
stagnation of Internet Explorer, all the ultra-keen Web developers who
would normally jump on a technology like this have moved to
Firefox) as their development platform of choice. To put it bluntly,
one really cares what Internet Explorer can do now, because there is so
that it can't do (like properly support
So, the question is, what are the other browser makers doing about
Mozilla is tracking requests for XForms support and volunteers
working on it in
bug 97806. The comments on this bug, which dates back to the days when
XForms was a working draft, make interesting reading. There are many
opinions on why XForms may or may not be worthy of consideration for
inclusion in Mozilla, but the status quo is that it remains a relatively
low-priority feature request in need of good developers, despite having
nearly 500 votes from community members.
Apple (whose Safari browser has become a serious consideration for
developers) and Opera issued a
combined statement last September in response to XForms becoming a
proposed recommendation. In it, they outlined a list of
in the standard that they felt made XForms inappropriate as a
for HTML forms. When pressed, they
admitted that XForms was probably worthy as a platform for
forms development, as long as HTML forms remained as the mainstream
So why all this negative sentiment towards XForms? Is it really so
Like any new technology, XForms has a rough spot or two, but the
productivity it offers to developers cannot be denied. Yet, while XForms
itself isn't all that complex, it relies on a host of technologies that
are fairly complex, and are not widely implemented in today's
Quoting from Apple and Opera's statement,
"XForms has too many dependencies. In addition to XForms
XForms implementation needs to support XML with namespaces, XML
XPath, XML Events, DOM Events, DOM Core, CSS, a stylesheet linking
technology (e.g. the XML Stylesheet PI), and a host language (e.g.
or SVG). In particular, its dependency on XML Schema is of great
The Mozilla bug discussion suggests that
XML Schema support is not strictly necessary for a basic
XForms, but XML
Events is a definite piece of the puzzle that has yet to be built
Mozilla. Meanwhile, browsers like Opera and Safari are even further
From what I can tell, XForms has the dubious distinction of being one of
first implementations of a number of XML technolgies with mass appeal to
developers. Though well thought out, none of these technologies has had
compelling reason to be built into a Web browser before, and now, all of
sudden, they would all have to be built at once in order to support
Even with a free, fully compliant plug-in for Internet Explorer, XForms
some serious hurdles to overcome before developers can consider it as a
serious tool for general Web development. If you want to pitch in, I
definitely encourage you to contribute your services to the Mozilla
but it will take some smart brains and a lot of work to bring XForms
Overlapping Borders in CSS
Though still problematic, due to limited formatting properties
lagging browser support,
multi-column layouts have become the strived-for ideal of CSS page
on the Web.
So, say you want a vertical line between two columns on your Website.
right? You just apply a simple CSS border to the side of whichever
But what happens if you don't know which column will be
This could vary from day to day if you publish dynamic content; it could
even change depending on the width of each user's browser window.
the column without the border becomes the tallest, the vertical line
stop at the bottom of the shorter column!
The solution is to put a border on both columns, then make them
overlap, so they look like a single border. Here's how this might look
your CSS code:
border-right: 1px solid black;
border-left: 1px solid black;
What's happening here is the
sidebar column is assigned a
of 150 pixels, to which it adds a 1-pixel vertical border along its
right-hand side. This border will therefore be drawn along the 151st
from the left-hand side of the browser window.
maincontent column, meanwhile, is given a left-hand
of 151 pixels, placing the left edge of its content area at the 152nd
from the left-hand side of the browser window. Thus, the 1-pixel
border that we add to its left-hand side will also be drawn along the
pixel from the side of the window.
The two borders overlap, and look like just a single 1-pixel border.
sidebar is taller, its border is responsible for drawing the bottom
of the shared border. When
maincontent is taller, however,
it draws the bottom of this border.
We used this very technique recently to make sure that the borders of
two side columns on sitepoint.com don't end prematurely when the content
area is short.