<?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>Flexknowlogy - Jared Stein&#039;s ARCHIVED blog - update to jaredstein.org &#187; quirks mode</title>
	<atom:link href="http://flexknowlogy.learningfield.org/tag/quirks-mode/feed/" rel="self" type="application/rss+xml" />
	<link>http://flexknowlogy.learningfield.org</link>
	<description>Jared Stein&#039;s archived blog on education, technology, culture, and the web</description>
	<lastBuildDate>Fri, 30 Oct 2009 19:35:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Blackboard Vista Triggers Quirks Mode</title>
		<link>http://flexknowlogy.learningfield.org/2009/04/02/blackboard-vista-triggers-quirks-mode/</link>
		<comments>http://flexknowlogy.learningfield.org/2009/04/02/blackboard-vista-triggers-quirks-mode/#comments</comments>
		<pubDate>Thu, 02 Apr 2009 16:25:20 +0000</pubDate>
		<dc:creator>Jared Stein</dc:creator>
				<category><![CDATA[blackboard]]></category>
		<category><![CDATA[web dev]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[quirks mode]]></category>
		<category><![CDATA[standards]]></category>
		<category><![CDATA[vista]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://flexknowlogy.learningfield.org/?p=626</guid>
		<description><![CDATA[Ever been annoyed by Blackboard Vista&#8217;s (or Campus Edition 6+&#8217;s) rendering of your XHTML + CSS web pages? Yeah, me too&#8211;especially on Internet Explorer. This happens because Bb Vista triggers a browser&#8217;s quirks mode in spite of DOCTYPEs and validated markup. More than just troublesome for pretty CSS-based pages, quirks mode, triggered on standards-compliant pages, [...]]]></description>
			<content:encoded><![CDATA[<p>Ever been annoyed by Blackboard Vista&#8217;s (or Campus Edition 6+&#8217;s) rendering of your XHTML + CSS web pages? Yeah, me too&#8211;especially on Internet Explorer. This happens because Bb Vista triggers a browser&#8217;s <a href="http://www.quirksmode.org/css/quirksmode.html">quirks mode</a> in spite of <a href="http://www.w3.org/QA/2002/04/valid-dtd-list.html">DOCTYPE</a>s and <a href="http://www.w3.org/QA/2002/04/valid-dtd-list.html">validated markup</a><span id="more-626"></span>.
</p>
<p>More than just troublesome for pretty CSS-based pages, quirks mode, triggered on standards-compliant pages, can negatively affect the usability and functionality of the learning experience. For example, we use an <a href="http://uvsc.edu/disted/gamegarden/">inline quizzing</a> Javascript that renders questions and answer choices and feedback based on standards mode CSS. In quirks mode this self-assessment tool is useless.</p>
<h3>Blackboard Was Made For Quirks</h3>
<p>
Basically quirks mode means the browser thinks your web skills are not up to snuff, and the browser therefore renders your CSS in a non-standard fashion. Quirks mode is triggered when a DOCTYPE, e.g.:</p>
<pre style="font-size: 90%">
<code>
&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"&gt;
</code>
</pre>
<p>&#8230;is missing, or invalid, or unknown, or not where it should be (i.e. the first line of the document).</p>
<div><img style="border: 1px solid" src="http://flexknowlogy.learningfield.org/files/2009/04/wikis51.jpg" alt="" /></p>
<div style="font-size: 80%">
<em>javascript:alert(document.compatMode)</em> pasted into the Internet Explorer address bar kindly informs us that this browser is rendering <a href="http://resources.qooxdoo.org/download/advanced_boxtest/box_test_standard.html">this page</a> in quirks mode. Firefox will tell you if you go to <em>Tools &gt; Page Info</em>. <a href="http://resources.qooxdoo.org/download/advanced_boxtest/box_test_standard.html">Advanced Box Model Test</a></div>
</div>
<p>But even if you&#8217;ve been careful to put a valid DOCTYPE into your web pages, once it&#8217;s loaded up into Bb Vista and linked to, either from a Folder or a Learning Module, the browser will go into quirks mode. Why does this happen? Simple: <strong>Bb Vista inserts XHTML and JavaScript at the beginning of all web pages onload.</strong> <a href="http://field.5tein.com/files/2009/04/quirkstest1.png">140+ lines</a> of it, to be exact. It&#8217;s an odious thing to do, but, what do you expect? It&#8217;s Blackboard.
</p>
<p>It may (or may not) be important to note that <strong>this does not happen when viewing a page in the File Manager</strong>&#8211;only when a page is loaded from a link within the course.</p>
<h3>What You Can Do</h3>
<p>Not much. And yet this could be <strong>a big issue for Internet Explorer users</strong> (FireFox renders page in quirks mode [not <a href="https://developer.mozilla.org/en/Mozilla%27s_DOCTYPE_sniffing#Almost_Standards_Mode">"Almost Standards Mode"</a> as I'd hoped], yet most standards-compliant XHTML and CSS still render well).
</p>
<p>And though <a href="http://marketshare.hitslink.com/browser-market-share.aspx?qprid=2">most users are still on IE 6 or 7</a> I had some hope for a way out with Internet Explorer 8. You see,  <a href="http://msdn.microsoft.com/en-us/library/dd565650(VS.85).aspx">Microsoft promised that &#8220;a page explicitly opts into standards mode&#8221; when it includes &#8220;a metatag in the page that specifies IE=8 or IE=EmulateIE8&#8243;</a>. For example:</p>
<pre style="font-size: 90%">
<code>&lt;meta http-equiv="X-UA-Compatible" content="IE=IE8" /&gt;
</code>
</pre>
<p>In practice, however, this META tag alone does not force IE8 into standards mode in Bb Vista&#8211;the misplaced XHTML is apparently too much for IE8 to ignore.</p>
<p>So the most practical solutions I can think of are:</p>
<ol>
<li>
<p>
<strong>Write custom CSS for Blackboard</strong> that renders (or re-renders) the page according to <a href="http://en.wikipedia.org/wiki/Internet_Explorer_box_model_bug">the quirks mode box model</a>. This could be done using <a href="">Internet Explorer conditional comments</a>, for example:</p>
<pre style="font-size: 90%">
<code>
&lt;!--[if IE ]&gt;
  &lt;link href="ie-quirks.css" rel="stylesheet" type="text/css" /&gt;
&lt;![endif]--&gt;
</code>
</pre>
<p>I haven&#8217;t yet considered what CSS rules would need to be written to accommodate this, but <em>if it was possible</em> this seem like the most robust and efficient solution.</p>
</li>
<li><strong>Rewrite the page with Javascript.</strong> After Bb has loaded (or begun to load) the page, Javascript triggers a full rewrite of the page, either wiping out or rewriting the Bb XHTML and Javascript in a more appropriate location (e.g. in a targeted, ID&#8217;ed element). I&#8217;ve asked one of my developers to try this out today, but already fear the additional load time it might put on the Bb-hosted page.</li>
</ol>
<p>Any other ideas?</p>
<p>If this were only about appearance I wouldn&#8217;t be raising a fuss, but this can and does affect the usability of certain e-learning tools, and forces developers to ask, &#8220;How will this work in Blackboard?&#8221; yet again.</p>
]]></content:encoded>
			<wfw:commentRss>http://flexknowlogy.learningfield.org/2009/04/02/blackboard-vista-triggers-quirks-mode/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

