I’ve just been reading this article on beautiful white websites, and in particular I love Pixelbot. Using a different typographic feature in each heading works well, and having a very visual but very minimal design also totally appeals to me. Serves as inspiration for learning how to make cute reflective robots in Photoshop.
Recent Posts
-
Beautiful White Websites
-
Trying on dresses with augmented reality
I’ve just been watching the Fashionista demo video cited on this article on augmented reality. It’s always a little scary when a new technology is hideously abused to deliver lots of cool things which have no practical value at all, but I think this is a great example of applying something new in the right way for an actual purpose.
-
Designing content templates
A lot of the design work I’ve done to date has been oriented around interactive applications as opposed to content sites. I’ve recently started to appreciate the skill involved in designing suitable content for different templates and integrating content into a design. I guess previously I had the attitude that you come up with a design with a placeholder for where the main content goes, however this leads to blocky text that is hard to consume.
A really good example of this done well is BellamyStudio. I ended up looking at the site after a friend mentioned it. Each template has a very clear hierarchy of information, and the type design makes it extremely simple to scan a page and pick up the key messages. The overall visual design is simple enough to let the detail in typography and content come across without interference.
I love how stunning the overall design is, but also how simple. Little details show just how much thought has been put into this – I love the subtle use of colour to pick out the heading from the main content paragraph on each page.
-
CSS specificity for deprecated HTML attributes
Today I had to plug a slightly strange gap in my knowledge – how old school HTML attributes apply to the CSS specificity resolution for conflicts. An example would be the border attribute specified both as an attribute on a table element, and with an element selector in a stylesheet.
It looks like old school html attributes to control presentation are treated as the lowest of the low – so a duplicate instruction within any kind of CSS selector will be treated as more specific and win.
I had at first assumed they would be treated with the same specificity as inline styles, but not so.
Now you can sleep at night.
-
Problems using Typekit with Photoshop design work
There’s been a lot of discussion recently around progress getting font foundries to adopt a suitable licensing model for web distribution of font files, providing a way to render live text in a range of fonts. I’ve been playing around a little with Typekit with the intention of using this on a site I’m designing at the moment.
The main issue that I’ve hit is that Typekit is geared around web licensing and delivery of font files – so a subscription will give you access to a wide range of fonts that can then be downloaded from your site and used to render text. However the earlier stage in the workflow is working on page designs in Photoshop, and a Typekit subscription won’t give you any access or rights around downloading a font definition file to use for design work.
This means that theoretically I have much more freedom around typography, but only when I come to the build stage of the site. I wouldn’t necessarily mind paying for a font separately from the Typekit subscription, but I can’t actually find the same font I would like to use on the foundry site (admittedly this may just be my own stupidity).
I think this is just a teething issue with a new service – it’s being discussed on the support forum…
-
Supporting native browser rendering of custom fonts
I’ve just been reading an article from Jeff Veen on a font-embedding technology coming up shortly. We’re going to be in a situation soon where every major browser is about to support the ability to link to a font hosted on a web server, which is downloaded and used by the browser to render text. Although the technology is almost there, legal and copyright issues will take a lot longer to catch up. It looks like this could provide an interim solution, definately worth keeping an eye on.
-
Configuring a virtual application within an ASP.NET MVC site
I recently had to look into how to get requests to /TestApp within an ASP.NET MVC site resolving to another application, instead of picking up the default routing rule and trying to find the Index action on a TestApp controller class. A scenario where this may occur would be setting up a wiki application to run on /wiki off your main domain name.
First off, we need to ensure that the routing module doesn’t kick in and attempt to handle the request. This can be achieved by making the following change in global.asax of the MVC app…
routes.IgnoreRoute("{*path}", new { path = @"TestApp\/(.*)" });
You can then create a new virtual directory in IIS under the main site, and convert it into an application to ensure it’s running in a seperate AppPool etc.
The final step is to ensure that web application settings in the parent application don’t cascade and get applied to the child application. This is achieved by wrapping all of the main configuration in a location block, and setting inheritInChildApplications to false like so…
<location path="." inheritInChildApplications="false"> <system.web>Blah</system.web> <system.webServer>Blah</system.webServer> </location>
The most useful reading on this I could find was this forum post.
-
Team Explorer 2008 timeout and COM exception after installing October TFS PowerTools
I had been experiencing massive delays after connecting to a TFS server in Team Explorer 2008. These usually ended up with a COM exception – Creating an instance of the COM component with CLSID {B69003B3-C55E-4B48-836C-BC5946FC3B28} from the IClassFactory failed due to the following error:80004005.
This turned out to be a problem with the October release of the TFS PowerTools. I found the solution here which was based on disabling the new ‘Collaboration’ feature that was added to Team Explorer.
-
Unable to fade text in Flash player 9
I was looking into a bizarre problem recently in Flash where I couldn’t get the simplest thing to work – fading text. I tried everything I could think of – motion tweens, classic tweens, changing the Alpha effect, changing the alpha channel in the text colour.
The weird thing was that targetting Flash 10 in the publishing settings meant the animation worked fine, but switching to flash 9 caused it to stop working.
It turns out that in order to animate the opacity of dynamic text for Flash 9, you need to explicitly specify which character glyphs to embed in the swf. Select the dynamic text element, then hit the ‘Character Embedding’ button in the properties pane.
When I stop to think about it, this makes a lot of sense. By default I would imagine flash is using the operating system to draw the text with the specified font. This is why the font needs to exist on the end machine. However, as soon as you do things like fade opacity, I think flash must take responsibility for rendering the text. In order to do that, flash needs the vector information for drawing different characters in the font, so you have to explicitly embed that information. In order for this to work in Flash player 10, they must make some kind of default assumption that you need the vector information embedded, and do this for you.
-
Problems with javascript minification that affects SwfObject 2.1 in Internet Explorer
This is actually a more general issue with javascript minification that can affect a number of scripts, but I noticed it while tracking down weird behaviour with the minified version of SwfObject that only affected Internet Explorer.
Basically, standard behaviour with most javascript minifiers is to strip out anything contained within comments. I finally tracked down this piece of code in the swfobject library that was getting stripped out (incorrectly) by the minifier…
/*@cc_onie = true;@if (@_win32)windows = true;@elif (@_mac)mac = true;@end@*/This library carries out browser detection by using the proprietary Conditional Compilation feature in Internet Explorer. In order to stop other browsers from choking, the code is wrapped in a comment.
I’m not commenting whether this is a good or bad idea, simply that it does appear in existing scripts, and causes a bunch of javascript minifiers to strip out functional code.
I think my approach will be to revise the set of regular expressions that control what gets stripped out to cater for this variation.
