More on that Opera 7 bug, at least I think it’s a bug.
It appears the Opera 7 may renger the page sooner than it should with respect to <link rel="Stylsheet" ... > and <link rel="Alternate Stylsheet" ... > usage. In my case, I had the alternate stylesheets declared before my regular stylesheets:


<link
     rel="Alternate Stylesheet"
     href="/style/css/screen-default-right.css"
     type="text/css"
     media="screen" 
/>
<link
     rel="Stylesheet"
     href="/style/css/screen-default-left.css"
     type="text/css"
     media="screen"
/>

They were in this order due to the way that this site is built. This of course meant the Opera 7 would not render the style at all. The twist to this setup was that if I specified full paths instead of relative ones:


<link
     rel="Alternate Stylesheet"
     href="/style/css/screen-default-right.css"
     type="text/css"
     media="screen" 
/>
<link
     rel="Stylesheet"
     href="/style/css/screen-default-left.css"
     type="text/css"
     media="screen"
/>

they would get rendered. After some tinkering, I discovered that swapping their order cured the problem in Opera 7:


<link
     rel="Stylesheet"
     href="/style/css/screen-default-left.css"
     type="text/css"
     media="screen"
/>
<link
     rel="Alternate Stylesheet"
     href="/style/css/screen-default-right.css"
     type="text/css"
     media="screen" 
/>

Go figure. Is this a real bug, or is there some unwritten rule about link tag ordering that I don’t know about?

I see that Dive Into Mark talks about hiding CSS from Opera 7. Yeah it’s even easier than that. Put your alternate stylesheet tags first. ;-)

See more posts about: www | All Categories