<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Bradley Holt &#187; CSS</title>
	<atom:link href="http://bradley-holt.com/tag/css/feed/" rel="self" type="application/rss+xml" />
	<link>http://bradley-holt.com</link>
	<description></description>
	<lastBuildDate>Thu, 17 May 2012 01:04:35 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
		<item>
		<title>Zend Framework Route Context Plugin</title>
		<link>http://bradley-holt.com/2010/01/zend-framework-route-context-plugin/</link>
		<comments>http://bradley-holt.com/2010/01/zend-framework-route-context-plugin/#comments</comments>
		<pubDate>Mon, 11 Jan 2010 09:58:00 +0000</pubDate>
		<dc:creator>Bradley Holt</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Zend Framework]]></category>

		<guid isPermaLink="false">http://bradley-holt.com/2010/01/zend-framework-route-context-plugin/</guid>
		<description><![CDATA[I want to share a simple, yet very useful, custom Zend Framework plugin that we use on almost all of our projects. The plugin (and associated code in the layout file) provides the Zend Framework route context as CSS classes on the body element. This allows us to change the design (using CSS) and/or behavior [...]]]></description>
			<content:encoded><![CDATA[<p>I want to share a simple, yet very useful, custom <a href="http://framework.zend.com/">Zend Framework</a> plugin that we use on almost all of our projects. The plugin (and associated code in the layout file) provides the Zend Framework route context as CSS classes on the <code>body</code> element. This allows us to change the design (using CSS) and/or behavior (using <a href="http://www.alistapart.com/articles/behavioralseparation">unobtrusive JavaScript</a>) on the page based on the Zend Framework route. For example if the module name was <code>default</code>, the controller name was <code>news</code>, and the action was <code>get</code> then the opening of the <code>body</code> element would like this:</p>
<pre><code>&lt;body class="default news get"&gt;</code></pre>
<p>There are some limitations. For example, you need to be careful not to overlap module, controller, or action names. If this is a problem for you then you could preface the class names (e.g. <code>module-default</code>, <code>controller-news</code>, <code>action-get</code>).</p>
<p>The <a href="http://gist.github.com/244249#file_route_context.php">RouteContext</a> plugin hooks into the <code>preDispatch</code> event and creates an array of route context strings. This example simply uses the module, controller, and action names as the route context. Often I&#8217;ll add other contextual strings to this array as needed. This array is then assigned to the view. The <a href="http://gist.github.com/244249#file_layout.phtml">layout</a> view script then simply implodes this array into the value of the <code>class</code> attribute using a space character as the glue.</p>
<p><script src="http://gist.github.com/244249.js?file=RouteContext.php"></script><script src="http://gist.github.com/244249.js?file=layout.phtml"></script></p>
]]></content:encoded>
			<wfw:commentRss>http://bradley-holt.com/2010/01/zend-framework-route-context-plugin/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Web Design and Web Development</title>
		<link>http://bradley-holt.com/2010/01/web-design-and-web-development/</link>
		<comments>http://bradley-holt.com/2010/01/web-design-and-web-development/#comments</comments>
		<pubDate>Sat, 02 Jan 2010 21:36:00 +0000</pubDate>
		<dc:creator>Bradley Holt</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Mobile Computing]]></category>

		<guid isPermaLink="false">http://bradley-holt.com/2010/01/web-design-and-web-development/</guid>
		<description><![CDATA[Back in October, Jeffrey Zeldman tweeted something that I strongly agree with: Real web designers write code. Always have, always will. #aea This sparked many conversations including these two tweets from Chris Shiflett: According to @zeldman, real web designers write code. (I think he means HTML and CSS, not PHP, Perl, and Python.) What do [...]]]></description>
			<content:encoded><![CDATA[<p>Back in October, Jeffrey Zeldman <a href="http://twitter.com/zeldman/statuses/4818978868">tweeted</a> something that I strongly agree with:</p>
<blockquote><p>Real web designers write code. Always have, always will. <a href="http://twitter.com/search?q=%23aea">#aea</a></p>
</blockquote>
<p>This sparked many conversations including these <a href="http://twitter.com/shiflett/status/4819361797">two</a> <a href="http://twitter.com/shiflett/status/4820055234">tweets</a> from Chris Shiflett:</p>
<blockquote><p>According to @<a href="http://twitter.com/zeldman">zeldman</a>, real web designers write code. (I think he means HTML and CSS, not PHP, Perl, and Python.) What do you think?</p>
</blockquote>
<blockquote><p>I’ve now asked, separately, whether developers and designers should know HTML and CSS. In both cases, most think they should. Interesting.</p>
</blockquote>
<p>To which I <a href="http://twitter.com/BradleyHolt/status/4820141311">responded</a> (brackets added):</p>
<blockquote><p>@<a href="http://twitter.com/shiflett">shiflett</a> IMHO, the demarcation between web developers and web designers should be POSH [<a href="http://microformats.org/wiki/posh">Plain Old Semantic HTML</a>]. That&#8217;s what both need to know.</p>
</blockquote>
<p>I have a pretty strong opinion about this. You could say that I have the luxury of working with an <a href="http://foundline.com/people/jason-pelletier">excellent designer</a> who implements all of his own CSS—even tackling much of the JavaScript coding on websites we build. To be clear: he is a designer, not a developer—working in both print (which is more technical than you might think) and web.</p>
<p>The typical process is summarized well in Marco Tabini&#8217;s <a href="http://phpadvent.org/2009">PHP Advent 2009</a> post on <a href="http://phpadvent.org/2009/css-and-other-people-by-marco-tabini">CSS and Other People</a>:</p>
<blockquote><p>From a developer’s perspective, “design work” means having to deal with the often hated, sometimes impossible, and always challenging task of translating a designer’s <em>comp</em> into a combination of HTML and CSS that will render properly on browsers that are often at complete odds with one another.</p>
</blockquote>
<p>In my opinion, that process is broken. Why is it assumed that because HTML and CSS are &#8220;code&#8221; it should be a developer&#8217;s job to implement these? Any decent designer is already familiar with the concept of separating presentation and content with <a href="http://en.wikipedia.org/wiki/Style_sheet_%28desktop_publishing%29">style sheets</a> (which are supported in Adobe InDesign, QuarkXPress, and even PageMaker and Microsoft Word). Is learning HTML and CSS, both <a href="http://en.wikipedia.org/wiki/Declarative_programming">declarative languages</a>, considered too hard for designers?</p>
<p>Let&#8217;s take a look at comps and the dreaded &#8220;s&#8221; word—slicing. As Marco pointed out, trying to &#8220;slice&#8221; a comp into HTML and CSS is &#8220;sometimes impossible&#8221; and &#8220;always challenging.&#8221; If a designer is only providing a comp, and not the HTML and CSS, it is very likely that the designer does not have a solid understanding of things like <a href="http://en.wikipedia.org/wiki/Progressive_enhancement">progressive enhancement</a>, browser compatibility, and even what is possible on the web.</p>
<p>The use of a comp generally assumes that design is purely visual and that all representations of the web page should look exactly like the comp. How should the content be presented to screen readers, to mobile devices, and in print? Sure, you could provide comps for each of these scenarios but this is not scalable and you quickly risk violating the &#8220;<a href="http://www.w3.org/TR/mobile-bp/#OneWeb">One Web</a>&#8221; concept. Thinking of a web page through the lens of only one specific visual representation of that page is very limiting.</p>
<p>Do you agree that the typical process is broken? If so, what are the barriers to fixing this process? Do we need better trained web designers? Do organizations need to be educated on how to better structure their web teams? This problem will eventually self-correct. My prediction is that teams with web designers that know HTML and CSS will create better websites and web applications and be more successful than teams using the old process.</p>
]]></content:encoded>
			<wfw:commentRss>http://bradley-holt.com/2010/01/web-design-and-web-development/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Tagnabit Launched!</title>
		<link>http://bradley-holt.com/2009/06/tagnabit-launched/</link>
		<comments>http://bradley-holt.com/2009/06/tagnabit-launched/#comments</comments>
		<pubDate>Mon, 01 Jun 2009 16:37:00 +0000</pubDate>
		<dc:creator>Bradley Holt</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[acmne09]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Folksonomy]]></category>
		<category><![CDATA[Found Line]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Social Media]]></category>
		<category><![CDATA[tagnabit]]></category>
		<category><![CDATA[tmdvt09]]></category>
		<category><![CDATA[XHTML]]></category>
		<category><![CDATA[Zend Framework]]></category>

		<guid isPermaLink="false">http://bradley-holt.com/2009/06/tagnabit-launched/</guid>
		<description><![CDATA[Last night we announced the launch of tagnabit, a social media aggregator. It&#8217;s &#8220;a service that aggregates tags from popular social media websites. It is useful for conferences or other events. Participants can use a shared tag across Twitter, Flickr, Technorati, YouTube and Delicious. Tagnabit then aggregates this content in one place.&#8221; The idea originally [...]]]></description>
			<content:encoded><![CDATA[<p>Last night we <a href="http://twitter.com/BradleyHolt/status/1986607969">announced</a> the launch of <a href="http://tagnabit.net/">tagnabit, a social media aggregator</a>. It&#8217;s &#8220;a service that aggregates tags from popular social media websites. It is useful for conferences or other events. Participants can use a shared tag across Twitter, Flickr, Technorati, YouTube and Delicious. Tagnabit then aggregates this content in one place.&#8221; The idea originally started with <a href="http://bradley-holt.com/2009/03/tmd-vt-social-media-recap/">Town Meeting Day Vermont </a>and then was used for the <a href="http://bradley-holt.com/2009/05/acm-ne-conference/">Alliance for Community Media Northeast regional conference</a>. People found it useful, so we decided to make a &#8220;generic&#8221; version that basically has the same functionality as these sites, but for any arbitrary tag. Bill Simmon has a few ideas on <a href="http://candleboy.com/2009/06/tagnabit/">how tagnabit can be used</a>.</p>
<p>The functionality behind tagnabit was built using <a href="http://framework.zend.com/">Zend Framework</a> (MVC components, Zend_Feed, Zend_Service_Flickr, and Zend_Cache). The client side is all semantic XHTML (with a few Microformats), CSS, and a few JavaScript enhancements (using jQuery). We&#8217;ve got plans for some new features &#8211; but we&#8217;re curious to see how people use the site first.  If you&#8217;ve got feedback, please send it our way via <a href="http://twitter.com/home?status=%23tagnabit+">Twitter</a>, Flickr, Technorati, YouTube or Delicious by tagging your content with <a href="http://tagnabit.net/tagnabit">tagnabit</a> (#tagnabit on Twitter).</p>
]]></content:encoded>
			<wfw:commentRss>http://bradley-holt.com/2009/06/tagnabit-launched/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Open (local) Government</title>
		<link>http://bradley-holt.com/2009/04/open-local-government/</link>
		<comments>http://bradley-holt.com/2009/04/open-local-government/#comments</comments>
		<pubDate>Wed, 08 Apr 2009 01:51:00 +0000</pubDate>
		<dc:creator>Bradley Holt</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[BTV]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[FOSS]]></category>
		<category><![CDATA[Open Standards]]></category>

		<guid isPermaLink="false">http://bradley-holt.com/2009/04/open-local-government/</guid>
		<description><![CDATA[Last night I went to the Burlington, Vermont City Council meeting to listen to our newly re-elected mayor, Bob Kiss, give his State of the City speech and watch the City Council attempt to elect a new council president. I said &#8220;attempt&#8221; because, after 14 rounds of voting, they were still deadlocked 7-7 for opposing [...]]]></description>
			<content:encoded><![CDATA[<p>Last night I went to the Burlington, Vermont City Council meeting to listen to our newly re-elected mayor, Bob Kiss, give his State of the City speech and watch the City Council attempt to elect a new council president. I said &#8220;attempt&#8221; because, after 14 rounds of voting, they were still deadlocked 7-7 for opposing candidates. However, that&#8217;s not what I want to talk about. In Mayor Bob Kiss&#8217; speech he made the following statement:</p>
<blockquote><p>My administration worked closely with the Open Government Committee formed by resolution of the City Council. In response to committee recommendations, we’ve included more information about public meetings on the City web-site and the Planning Department added a new section about proposed and pending zoning amendments. During the campaign it was clear that people want to know more about the activities of each city department. Over the next year we’ll look closely at how to finance and build a more uniform, responsive and user-friendly City website that will keep you better informed about public meetings and how you can participate in the process of government.</p></blockquote>
<p>I&#8217;m all for open government and the <a href="http://www.ci.burlington.vt.us/">City of Burlington, Vermont</a> could certainly use a better website. I&#8217;d like to give the city some advice on its priorities in building a better website. This blog post is my first round of advice, but I&#8217;d like to hear reactions from other web people in and around Burlington — or anyone else who has an interest in our city having a better website! This advice is based on the goals outlined by Mayor Bob Kiss: that the website is inline with the spirit of Open Government, is responsive, and is user-friendly.</p>
<p>First, the website must be accessible and use open standards. I put these two together because by using open standards the website can be accessible. Specifically, the website should use strictly semantic XHTML. This allows for its use in the widest range of user agents (browsers) by the widest range of user abilities (as opposed to disabilities). Its presentation should be progressively enriched through CSS and its behavior should be progressively enhanced through unobtrusive JavaScript. Progressive enhancement means that the website is useful, at its core, without any CSS or JavaScript. It becomes more useful through the use of CSS and then, perhaps, even more useful through the use of JavaScript. However, neither CSS nor JavaScript should be required to access the website&#8217;s content.</p>
<p>Second, the website should be built using free (as in freedom, not cost) and open source software. It is our government&#8217;s responsibility to use non-proprietary software wherever possible. When it comes to building websites and web applications, there are no excuses for not using free and open source software. The capabilities of the open web platforms available equal, or exceed, the capabilities of proprietary web platforms. Any custom software developed for the city&#8217;s website must be licensed to the city under a free and open source license (this does not mean that the city shouldn&#8217;t pay for this software to be developed).</p>
<p>Third, the city should embrace the concept of open linked data. This means that the city should publish data, not just content. This data should be both human and machine readable. This allows third parties to access raw data and repurpose this data in new and interesting ways. To this end, data and content should be either put in the public domain (which is probably the case already) or use a Creative Commons license. Where possible, the city&#8217;s website should consume open data published by others rather than duplicating effort. There are several technical approaches to publishing and consuming open linked data including Microformats and the Semantic Web.</p>
<p>I hope these recommendations are useful. Once I&#8217;ve heard some feedback from other web people, I&#8217;ll forward these recommendations to my city councilors and the mayor. Hopefully they&#8217;ll find it helpful in improving the city&#8217;s website!</p>
]]></content:encoded>
			<wfw:commentRss>http://bradley-holt.com/2009/04/open-local-government/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>The Web Is Not A Visual Medium</title>
		<link>http://bradley-holt.com/2009/03/the-web-is-not-a-visual-medium/</link>
		<comments>http://bradley-holt.com/2009/03/the-web-is-not-a-visual-medium/#comments</comments>
		<pubDate>Mon, 16 Mar 2009 22:50:00 +0000</pubDate>
		<dc:creator>Bradley Holt</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Open Standards]]></category>
		<category><![CDATA[XHTML]]></category>

		<guid isPermaLink="false">http://bradley-holt.com/2009/03/the-web-is-not-a-visual-medium/</guid>
		<description><![CDATA[A claim you may have heard me make before is that the web is not a visual medium. Some of you know exactly what I mean and some of you probably think I&#8217;m nuts. For those of you who think I&#8217;m crazy, let me elaborate. You, like most people, probably experience the web visually. However, [...]]]></description>
			<content:encoded><![CDATA[<p>A claim you may have heard me make before is that the web is not a visual medium. Some of you know exactly what I mean and some of you probably think I&#8217;m nuts. For those of you who think I&#8217;m crazy, let me elaborate. You, like most people, probably experience the web visually. However, this visual aspect is only one facet of the web. Underneath the visual aspect you will find that the web is a structured, or <em>semantic</em>, medium. This means that people (or even machines) of varying capabilities (as opposed to disabilities), using all sorts of user agents (a fancy way of saying web browsers) can experience this same web non-visually. If built correctly, the same web page should be accessible to you visually as well as to visually impaired people, search engine robots, people that want to use text only web browsers, people using older versions of web browsers (backward compatibility), people using mobile devices, and user agents that weren&#8217;t even invented yet when the web page was first built (<a href="http://en.wikipedia.org/wiki/Forward_compatibility">forward compatibility</a>).</p>
<p>There&#8217;s one catch. There are <em>many</em> web sites and web applications built on the incorrect assumption that the web is a visual medium. The web designers and web developers who build these web sites and web applications <a href="http://store.mozilla.org/product.php?code=14%2013108&amp;catid=0">break the web</a>. In order to not break the web, web designers and web developers need to use open standards starting with <a href="http://bradley-holt.com/2008/03/plain-old-semantic-html-posh/">plain old semantic (X)HTML</a>. This <em>semantic</em> (X)HTML can then be <a href="http://www.alistapart.com/articles/understandingprogressiveenhancement">progressively enriched/enhanced</a> using <abbr title="Cascading Style Sheets">CSS</abbr> (for presentation) and JavaScript (for behavior). This approach works well with the concept of <a href="http://www.w3.org/TR/mobile-bp/#OneWeb">One Web</a> which &#8220;means making, as far as is reasonable, the same information and services available to users irrespective of the device they are using.&#8221;</p>
<p>Craig Cook has a good article about <a href="http://www.alistapart.com/articles/grokwebstandards">How to Grok Web Standards</a> in which he addresses many of these ideas and more. If you still think I&#8217;m crazy, hopefully it&#8217;s not because you think I&#8217;m wrong about the web not being a visual medium. If you don&#8217;t think I&#8217;m crazy then maybe in another blog post I&#8217;ll talk about why I think that content management systems (CMSs) in general, and WYSIWYG editors specifically, break the web.</p>
]]></content:encoded>
			<wfw:commentRss>http://bradley-holt.com/2009/03/the-web-is-not-a-visual-medium/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>CSS for Web Developers</title>
		<link>http://bradley-holt.com/2009/01/css-for-web-developers/</link>
		<comments>http://bradley-holt.com/2009/01/css-for-web-developers/#comments</comments>
		<pubDate>Sat, 17 Jan 2009 20:37:00 +0000</pubDate>
		<dc:creator>Bradley Holt</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[btvphpug]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Open Standards]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Vermont]]></category>

		<guid isPermaLink="false">http://bradley-holt.com/2009/01/css-for-web-developers/</guid>
		<description><![CDATA[The Burlington, VT PHP Users Group will be meeting Thursday January 22nd from from 6:00 pm to 8:00 pm. Since we (Found Line) recently had some demolition &#8211; I mean renovations &#8211; done we&#8217;ve got a bit more space so thought we&#8217;d finally host the meeting. Here&#8217;s a description of the presentation, &#8220;CSS for Web [...]]]></description>
			<content:encoded><![CDATA[<p>The Burlington, VT PHP Users Group will be <a href="http://groups.google.com/group/Burlington-VT-PHP/web/meeting-2009-01-22">meeting</a> Thursday January 22nd from from 6:00 pm to 8:00 pm. Since we (<a href="http://www.foundline.com/">Found Line</a>) recently had some demolition &#8211; I mean <a href="http://picasaweb.google.com/jason.pelletier/StudioConstruction#">renovations</a> &#8211; done we&#8217;ve got a bit more space so thought we&#8217;d finally host the meeting. Here&#8217;s a description of the presentation, &#8220;CSS for Web Developers&#8221;, that Jason will be giving:</p>
<blockquote><p>Most web developers don&#8217;t consider themselves designers—and shouldn&#8217;t. The reality of working on a website or web app, however, is that developers must either wear the designer hat or must interface with a designer/design team. Having a solid understanding of design best practices makes for a more efficient process and a higher quality product. Come hear more about web design and CSS from a designer&#8217;s perspective. We&#8217;ll cover semantic markup and its influence on CSS implementation, reset and debug stylesheets, tools for creating and debugging CSS, coding standards, and maybe even microformats if time allows. The goal isn&#8217;t to convert developers into design experts, but rather to give an overview of an effective design process that works for designers and developers alike.</p>
<p>Jason Pelletier is Creative Director and Web Designer for Found Line. The Burlington-based creative firm develops standards-based websites, product packaging and marketing strategies for growing businesses. Clients include Seventh Generation, Vermont Public Radio, EatingWell and True Body Products. Prior to co-founding Found Line, he managed creative resources for Seventh Generation, and was a designer for Stonyfield Farm.</p></blockquote>
<p>More details <a href="http://groups.google.com/group/Burlington-VT-PHP/web/meeting-2009-01-22">here</a>. Please pass this on to others you think might be interested. Pizza will be provided and we will be giving away a &#8220;<a href="http://store.mozilla.org/product.php?code=14%2013108&amp;catid=0">please don&#8217;t hurt the web &#8211; use open standards</a>&#8221; t-shirt as well as a copy of Jeffrey Zeldman&#8217;s book &#8220;<a href="http://www.zeldman.com/dwws/">Designing With Web Standards</a>&#8220;. Hope to see you there!</p>
]]></content:encoded>
			<wfw:commentRss>http://bradley-holt.com/2009/01/css-for-web-developers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VPR Reports Campaign 2008</title>
		<link>http://bradley-holt.com/2008/11/vpr-reports-campaign-2008/</link>
		<comments>http://bradley-holt.com/2008/11/vpr-reports-campaign-2008/#comments</comments>
		<pubDate>Tue, 04 Nov 2008 21:31:00 +0000</pubDate>
		<dc:creator>Bradley Holt</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Open Standards]]></category>
		<category><![CDATA[Vermont]]></category>
		<category><![CDATA[XHTML]]></category>

		<guid isPermaLink="false">http://bradley-holt.com/2008/11/vpr-reports-campaign-2008/</guid>
		<description><![CDATA[For coverage of local Vermont and national election news, check out the VPR Reports Campaign 2008 page that we (well, Jason really) put together. The 2008 Election Map is a Flash widget provided by NPR but other than that the page is all XHTML, CSS, and JavaScript (via jQuery and jQuery UI). Check back throughout [...]]]></description>
			<content:encoded><![CDATA[<p>For coverage of local Vermont and national election news, check out the <a href="http://www.vpr.net/news/campaign_2008/index.php">VPR Reports Campaign 2008</a> page that we (well, Jason really) put together. The 2008 Election Map is a Flash widget provided by NPR but other than that the page is all XHTML, CSS, and JavaScript (via jQuery and <a href="http://ui.jquery.com/">jQuery UI</a>). Check back throughout the evening for updated information and listen to live coverage on VPR starting at 7pm tonight!</p>
]]></content:encoded>
			<wfw:commentRss>http://bradley-holt.com/2008/11/vpr-reports-campaign-2008/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>VSA Arts of Vermont Website</title>
		<link>http://bradley-holt.com/2008/10/vsa-arts-of-vermont-website/</link>
		<comments>http://bradley-holt.com/2008/10/vsa-arts-of-vermont-website/#comments</comments>
		<pubDate>Mon, 20 Oct 2008 12:02:00 +0000</pubDate>
		<dc:creator>Bradley Holt</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[XHTML]]></category>

		<guid isPermaLink="false">http://bradley-holt.com/2008/10/vsa-arts-of-vermont-website/</guid>
		<description><![CDATA[We recently launched the updated VSA Arts of Vermont website. Since VSA Arts of Vermont&#8217;s mission is to make &#8220;the world of the arts accessible to Vermonters of all abilities&#8221; it was critical that their new website be accessible. This was a challenge we readily accepted as web accessibility is something we take very seriously. [...]]]></description>
			<content:encoded><![CDATA[<p>We recently launched the updated <a href="http://www.vsavt.org/">VSA Arts of Vermont</a> website. Since VSA Arts of Vermont&#8217;s mission is to make &#8220;the world of the arts accessible to Vermonters of all abilities&#8221; it was critical that their new website be accessible. This was a challenge we readily accepted as web accessibility is something we take very seriously.</p>
<p>Web accessibility is fairly straightforward if you take a content-first approach and focus on web standards. The real challenge is doing this <em>and</em> making a great looking website that doesn&#8217;t have to compromise on functionality. We accomplished this by using semantic XHTML that contains enough structure to stand on its own without any visual representation. Then, this content was stylized using CSS. Finally, some behavior was added using unobtrusive JavaScript (using jQuery). This concept is called <a href="http://www.alistapart.com/articles/understandingprogressiveenhancement">progressive enhancement</a>. The final result is a great looking and very functional website that is accessible to all users.</p>
]]></content:encoded>
			<wfw:commentRss>http://bradley-holt.com/2008/10/vsa-arts-of-vermont-website/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Northeast Pools &amp; Spas Website Launch</title>
		<link>http://bradley-holt.com/2008/08/northeast-pools-spas-website-launch/</link>
		<comments>http://bradley-holt.com/2008/08/northeast-pools-spas-website-launch/#comments</comments>
		<pubDate>Sat, 23 Aug 2008 16:27:00 +0000</pubDate>
		<dc:creator>Bradley Holt</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Found Line]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[XHTML]]></category>
		<category><![CDATA[Zend Framework]]></category>

		<guid isPermaLink="false">http://bradley-holt.com/2008/08/northeast-pools-spas-website-launch/</guid>
		<description><![CDATA[We just launched the new Northeast Pools &#38; Spas website. I think Dave and Jason did a great job on the visual design and Liz did a fabulous job on organizing and helping to write the content! I worked primarily on the functionality for the construction and portfolio pages. The site is implemented using semantic [...]]]></description>
			<content:encoded><![CDATA[<p>We just launched the new <a href="http://www.northeastpools.net/">Northeast Pools &amp; Spas</a> website. I think Dave and Jason did a great job on the visual design and Liz did a fabulous job on organizing and helping to write the content! I worked primarily on the functionality for the <a href="http://www.northeastpools.net/what-we-do/construction/">construction</a> and <a href="http://www.northeastpools.net/portfolio/">portfolio</a> pages. The site is implemented using semantic XHTML, CSS, <a href="http://jquery.com/">jQuery</a>, and <a href="http://framework.zend.com/">Zend Framework</a>.</p>
<p>The cool thing about the construction and portfolio pages is that they use <a href="http://en.wikipedia.org/wiki/Progressive_enhancement">progressive enhancement</a>. What this means is that users without JavaScript (i.e. search engine robots &amp; screen readers) can navigate the content by fully reloading the page on each click. You can try this out yourself by disabling JavaScript in your browser. For users with JavaScript, each click on &#8220;next&#8221; or &#8220;previous&#8221; (on the construction page) or each portfolio feature (on the portfolio page) will cause their browsers to load the appropriate content dynamically into the right spot on the page without needing a full page reload.</p>
<p>One of the common problems with this type of JavaScript navigation is that you often break the browser&#8217;s back and forward navigation capabilities. Another common problem is that you can&#8217;t bookmark the page or send the link to a friend and have the same content loaded. Because these pages update the browser&#8217;s &#8220;hash&#8221; we get the browser&#8217;s back and forward capabilities as well as bookmarkability. The &#8220;hash&#8221; is the part of the URL that starts with the &#8220;#&#8221; character. For example, assuming you have JavaScript enabled you should be able to navigate right to the waterfall photo using the following link:
</p>
<p><a href="http://www.northeastpools.net/portfolio/#feature/waterfall/">http://www.northeastpools.net/portfolio/#feature/waterfall/</a></p>
<p>Critiques are welcome!</p>
]]></content:encoded>
			<wfw:commentRss>http://bradley-holt.com/2008/08/northeast-pools-spas-website-launch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Found Line Website Launched</title>
		<link>http://bradley-holt.com/2008/04/new-found-line-website-launched/</link>
		<comments>http://bradley-holt.com/2008/04/new-found-line-website-launched/#comments</comments>
		<pubDate>Sun, 27 Apr 2008 23:51:00 +0000</pubDate>
		<dc:creator>Bradley Holt</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Found Line]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[XHTML]]></category>
		<category><![CDATA[Zend Framework]]></category>

		<guid isPermaLink="false">http://bradley-holt.com/2008/04/new-found-line-website-launched/</guid>
		<description><![CDATA[I am happy to report that the new Found Line website has launched! This new version includes some much needed content and visual updates and is now running in Zend Framework (although there is very little functionality beyond static content). All of the visual effects use jQuery, there is no Flash to be found on [...]]]></description>
			<content:encoded><![CDATA[<p>I am happy to report that the new <a href="http://www.foundline.com/">Found Line</a> website has launched! This new version includes some much needed content and visual updates and is now running in Zend Framework (although there is very little functionality beyond static content). All of the visual effects use jQuery, there is no Flash to be found on the site, and all behavior should degrade gracefully if JavaScript is not enabled. The site is almost entirely valid XHTML and CSS &#8211; the only exceptions are a couple of visual effects that required a bit of hacking (but we&#8217;re hoping to find a valid XHTML alternative). The site has been checked for cross-browser compatibility in 25+ browser/OS combinations. It has also been tested in a text only browser and should be accessible to screen readers. Please take a look and let me know your thoughts &#8211; good, bad, or indifferent!</p>
]]></content:encoded>
			<wfw:commentRss>http://bradley-holt.com/2008/04/new-found-line-website-launched/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

