Microsoft have announced that Outlook 2010 will use the crippled Word rendering engine to display HTML emails (as does Outlook 2007). In response The Email Standards Project have launched a campaign to send a clear message to Microsoft: Outlook’s broken – Lets fix it.
Here is a little CSS trick that allows you to align content to the bottom of its container, in a similar fashion to how vertical-align="bottom" works in table-based layouts.
Let’s say we want to display an image with a title aligned to its top right corner, and a caption aligned to its bottom right corner:
I have recently been working on a website that contains a lot of video content, including some fairly short videos – less than 20 seconds in length. To ensure uninterrupted playback of these short clips I thought it would be smart to buffer the entire video stream before beginning playback.
In AS3 this can be achieved using the bufferTime property, which I set to 20 seconds:
var nc:NetConnection = newNetConnection();
nc.connect(null);
var ns:NetStream = newNetStream(this.introVideoConnection);
ns.bufferTime = 20;
var video:Video = newVideo(320, 240);
this.addChild(video);
video.attachNetStream(ns);
ns.play("myvideo.flv");
But when I tested the results on a remote server I discovered that Flash was waiting the entire 20 second duration before starting the video stream, despite the fact that the flv had fully downloaded in just a few seconds.
I recently had to create a simple Flash application that allowed the user to ‘erase’ an image using their mouse. I couldn’t find any examples of the exact effect I wanted, so I cobbled together my own. The effect I came up with is similar to using the eraser tool in Photoshop.
Demo
Click and drag your mouse on the image below to erase it. Press the reset button to start over.
Perhaps it is common knowledge, but until today I was unaware that the CSS first-child pseudo-class fails in IE7 when the child element is immediately preceeded by an HTML comment.
One of my readers, René, asked me if my FlashScaler JavaScript class works with SWFObject 2. I’m happy to say that yes, it does. The demo and download on my original FlashScaler post now include working examples using SWFObject 2.1.
Recently I was developing a website for a client whose primary export market is in China. Needless to say I was a little alarmed when my client’s representatives in China reported that they couldn’t access their new site.
My client has reps in both Shanghai and Beijing, neither of who could see the website, so I knew it wasn’t a localized issue. My immediate suspicion was that the infamous “Great Firewall of China” was to blame. Thankfully I was able to take a few simple steps to diagnose the problem and get the site up and running.
In my last post I outlined some of the problems that might arise from the proposed version targeting changes to Internet Explorer 8. My major concern was that by removing the motivation for web authors to update legacy sites, version targeting might hamper the adoption of modern web development techniques. During the week I have given some more thought to this issue, and it occurred to me that in Adobe Flash we have a fantastic real-world test case from which we might learn if version targeting is a viable strategy for a web browser.
When Dean Hachamovitch demonstrated in December that the forthcoming Internet Explorer 8 browser passed the Acid2 test in standards mode, there were calls for Microsoft to clarify if “standards mode” was the default setting for IE8. Last week it was announced on A List Apart and the Internet Explorer blog that IE8 will render pages using an IE7-level rendering engine by default, and that web developers must opt-in to take advantage of the new Acid2-compliant rendering mode.