New UA Web Templates are now available

Web templates based on the design and functionality of the current UA Home Page are available for usage by any official unit of The University of Alabama. There are three basic versions of the templates available, each of which offers numerous options for customization and arrangement of content. The template packages are organized into three different navigation types — one-level horizontal navigation, two-level horizontal navigation, and no horizontal navigation.

Also, new this time around is the release of a significant “how-to guide” for explaining how the templates work and best practices and techniques for customizing them to specific needs.  The UA Templates Guide explains the basic design elements of the templates, details the grid structure upon which the templates are built, describes the process of customizing the templates, explains how to create content to fit within the templates, and provides further resources for learning how to build highly-functional and visually-engaging web sites. This guide is intended to be a primer for working with the templates, and we encourage all users of the templates to read it carefully before beginning any design work.

By using these templates, units of The University of Alabama ensure that their web site is closely tied to the University’s top-level web sites and help build a cohesive and effective overall institutional web presence.  Please feel free to use the templates as needed, and to share this information with anyone you think would benefit from knowing about it.  And as always, please let us know if you have questions, comments or feedback regarding these templates. 

Strategic iPhone/Mobile development for key UA web sites

I’d like to share the outcome of a project we’ve been working on that positively impacts our top-level strategic web sites.  Below is a high-level summary of the project.  If you have any questions about this, please ask them in the comments section and we’ll be glad to answer.

Background/Challenge

We have recently been working to optimize our key strategic web sites for mobile devices, in order to ensure maximum accessibility and compatibility with all mobile platforms.

The challenge here is that manufacturers of mobile devices use a variety of platforms for mobile web browsing – some very “web-like”, and some not so much.  So taking the content of a web site and making it work in all of the major mobile platforms requires dedicated design processes that target specific devices, and deliver content to those devices based on their capabilities.  By doing so, we optimize the experience of browsing our sites on mobile devices without overwhelming the device beyond its capabilities, and we ensure that the mobile user experience for browsing our sites is of the highest quality.

Incidentally, we have always designed our web sites with mobile platforms in mind, as the process of building web standards-based web sites makes these sites mostly accessible in almost any platform.  But in order to improve the experience for our users, we have undertaken the task of optimizing our key web sites for mobile devices, separate from our standard development practices.

The Results

The results of this process are that we have successfully optimized our key strategic content-related web sites – UA News Center (http://uanews.ua.edu), Research Magazine (http://research.ua.edu), and Dialog (http://dialog.ua.edu) – for all of the major mobile platforms, so that the content on these sites is easily accessible and navigable on all devices.

Of particular interest and focus during this process was development for the iPhone platform, which is growing in popularity and market share.  We have built alternate versions of these web sites that are specifically tailored for the iPhone’s functionality using open source plug-ins that work with our content management system, WordPress, and the functionality of these sites is now very high for the iPhone.

Also, the UA Home Page (http://www.ua.edu) displays very well on the iPhone as well, as it has the exact look and functionality as it does in a web browser.  It also displays well in a stripped-down format in many older mobile devices, but we will be working to further advance its mobile functionality by fine-tuning its mobile capabilties.

Examples

Below are some screenshots of each site in various mobile devices so that you can see how they now appear in these devices.  We will continue to work to optimize and fine-tune these mobile versions of our sites and look for further opportunities to expand our reach to these mediums.  These steps represent a significant upgrade in the mobile browsing experience for visitors to our web sites, and will help us continue to spread our messages to new audiences while staying at the forefront of technology trends.

Click for larger version

Click for larger version

iphone_uanews

iphone_uanews_story

iphone_research

iphone_research_story

More:

CSS for the Phone

With the world of web expanding to mobile devices, designers must remember that ‘fantastic’ on a computer may be ‘horrifying’ on someone’s phone. However, CSS can help. By using an alternate style sheet, the computer and all the web wandering phones out there are covered.

First, we create a separate style sheet for phones by using media=”handheld” and place it in the head.

<link rel=”stylesheet” href=”name.css” type=”text/css” media=”handheld” />

Now comes the business of design in your CSS. Designing for the phone means designing for a small vertical screen and all the challenges it possesses.

First we take out all extraneous information by placing a  “display: none” in the CSS you want to hide. Once all the important areas have been singled out we’re ready for re-design.

Layout

Divide your layout into sets of horizontal bars. Horizontal layouts will keep things easy to read and provide a better hierarchy for your viewers. Try not to have two much side by side as it makes the text smaller. Make sure that your logo is at the top at all times and your main content comes directly after.

Examples:layouts

To better design your layout, a helpful guide to screen sizes can be found here at Sender 11.

Navigation

With touch screens popping up all over the place, it pays to consider the width of a human finger. Make sure links are large and well spaced so that mistakes do not happen. A good way to do this is to insert plain content or space around links. Another is to go with the button route. By turning a link into a button it is easier for the viewer to put their finger on the right spot.

Look

Remember that people mainly want to browse a page for information, so keep the layout simple. People will appreciate not having to navigate through a ton of images to get to what they want. Try understated patterns in small strips or as a background to add a different feel, or use a horizontal image at the very front to grab people’s attention.

Examples:

background

To conclude, the most important thing when designing for the mobile phone is readability.  Keep this in mind and everything will be perfect.

For more help and ideas, here are some good sites:

For info on designing for the iPhone try iPhone Microsites.
For examples in web design for the iPhone, try CSSiPhone.
For some good before and after pics try readyforiPhone.

To check if your CSS looks good on all cell phones, refer to “How to Test Websites for Mobile Devices” by Matthew Muro.

A new UA Home Page debuts

uaedu_2009

I’m sure most of you know by now that we rolled out a new UA Home Page yesterday at http://www.ua.edu.  This new version refreshes the Home Page with a modernized look and feel, simplified navigation, updated functionality, and close integration with the new Touching Lives campaign.  You’ll begin to see more about the latter as the fall goes on.  So what’s new about it?

What’s New?

  • Updated, modernized look & feel
  • Open layout; lots of whitespace
  • Sized for 1024 pixels-wide monitors, allowing larger text sizes and elements across the board
  • Simplified navigation through combination of primary and targeted navigation and “toolbox” - all in header
  • Contextual, page-specific navigation on second level and below
  • Addition of dynamic features-oriented image slideshow on Home (uses jQuery, and images will update frequently)
  • Addition of jQuery-enabled Quick Links section on home page to better position wide range of links and resources
  • Columnar grid layout, allowing for many combinations
  • Greater flexibility and customization, including ability to totally customize everything between header and footer
  • Greater ability to position and integrate content and content types
  • Integrated with “Touching Lives” campaign

What’s Next?

  • New web templates based on the design of the new Home Page will be available on September 28, 2009
  • Many institutional web sites (that are managed by WebComm) will be transitioned to new look by October 26, 2009

We’re very excited about this rollout, and the reception has been fantastic so far.  We hope you like it, and we’re hopeful that our campus will benefit greatly from this effort.  Let us know if you have any further questions about this initiative.

By the way, if you’re interested, you can see a mini-history of the UA Home Page at http://www.ua.edu/aboutsite.html.  Enjoy!

3 ways to apply CSS to HTML

If you’re setting out to learn how to use CSS (Cascading Style Sheets), the first step may not be learning the language but learning where to put the language. There are basically 3 ways to apply CSS to your HTML.

Note: With tools like jQuery and old-fashioned JavaScript, some might say there are more than 3 ways to apply CSS, but this article is about the 3 basic ways that will suit most purposes.

It doesn’t matter which order you learn these in but for this article we’ll go from the specific to the general. We’ll start with inline, then move to internal, then finish with external.

Inline

We start with the inline method of CSS placement. Inline style declarations allow us to define styles at the exact point we need them. For example, if we want to make a headline show up as large, bold, crimson text, we will find that headline in our HTML and add the CSS where the headline appears in the markup. Here is an example of what this inline CSS declaration would look like:

<h1 style="font-size:2.5em;font-weight:bold;color:#990000;">Sample
Headline</h1>

<p>This is a paragraph that has no inline styles applied to it.</p>

What you see in the code example above is mostly HTML, but it has some CSS essentially dropped right in the middle of it. We have specified that our h1 heading should have a font-size of 2.5 em (fairly large), a font-weight of bold (the CSS way of saying it should be boldfaced) and a color of #990000 (the hexadecimal, web-safe code for crimson).

We’ve also included a paragraph below the headline in our example, but we haven’t added any inline styles to it. With inline style declarations, we only affect the elements that we choose to style.

Now, if this was the only way to apply CSS, you might wonder just how useful this technology is. After all, it would be pretty tedious to have to add these kinds of statements to every piece of content you want to style throughout a website.

That’s where the other 2 methods of CSS placement come in so let’s move on.

Internal

Let’s say we want all our h1 headings and paragraphs on one particular web page to have a certain size, color and maybe a certain line-height (space between lines). One way to do this would be to include internal styles on the page rather than inline.

With internal placement of CSS, we will make our style rules in the HEAD section of the HTML. By using this method, the style declarations we make will affect only content on this page.

The basic syntax for writing internal CSS is to enclose these style declarations in style tags, so we add the following lines inside the HEAD section of our page:

<style>
h1 {font-size:1.5em; color:#990000;}
p {font-size:.9em; line-height:140%;color:#000000;}
</style>

This code sets the style on all p elements and all h1 elements within this particular web page. Keep in mind that there are ways to override those styles on certain paragraphs. One way to do that would be to put an inline style on a certain paragraph that sets its color to gray instead of black. Another would be to add more rules that would affect certain paragraphs using classes and IDs.

In case you’re wondering, technically you could put your internal CSS declarations in the BODY of the HTML rather than the HEAD, but placing the CSS in the HEAD is better for organization and performance and is definitely the way to go.

External

The 3rd method for applying CSS to your HTML is to put your CSS in an external file (call it something like style.css) and then link to that CSS in your HTML file. The great thing about this method is that you can have 1000 pages (or more) in a website and have every one of them link to that stylesheet. This means you can make changes to that one CSS file and have the changes apply across all 1000 pages of your site.

There are basically 2 steps to this method, building the CSS file and then linking to the CSS file in your HTML. We won’t cover making the CSS file in this post, so let’s just assume we have a CSS file called style.css that lives in the same directory on our server as the HTML file we want to apply it to.

All we have to do is type the following in the HEAD of our HTML document:

	<link rel="stylesheet" href="style.css" media="screen" />

As long as you have a stylesheet called style.css then any HTML file that includes that link in its HEAD will have the rules from style.css applied to it. This is generally how you would go about setting styles that control the appearance of a whole website in one place, the external CSS file.

Note: The href part of the link above has to correctly link to style.css, so if you are linking from a different directory you will have to use relative or absolute linking to navigate the path to style.css.

When to use which

You might wonder why there are 3 ways to apply CSS to your HTML, but once you start doing this stuff on your own website, you’ll quickly realize that all 3 methods are useful depending on the situation.

For example, most well-done CSS websites with more than about 2 pages employ an external CSS file to define most styles for the site. You can think of these as the default styles for all pages.

Now suppose there is one page where you want all styles to be the same as the rest of the site but with bigger paragraph text, or different colored headlines. You can use internal placement to define those different styles in the HEAD section of that page only and override the styles in your external CSS file. But, there’s a catch. If you want to override the external CSS with internal declarations, you’ll need to place the internal style tags and declarations after the link to the external style sheet.

Internal styles do not necessarily override external styles. If your internal styles come before the external CSS link, the external will overwrite the internal.

On the other hand, when we’re talking about overriding external or internal CSS with inline styles, things are a little more clearcut. Inline styles do override internal or external CSS. This means you can use inline styles if you have something that you just want to do for one specific element on one page without writing a rule that affects anything else.

It’s probably best to use inline styles sparingly. One of the main advantages of CSS is to separate the presentation, or look, of your website from the content of the site. External stylesheets and, to some extent, internal rules in the HEAD of a page, facilitate this separation. Inline styles mix presentation and content, and doing this too often can leave you with a site that’s difficult to maintain when you start making changes to the look with CSS.

If you are just getting started with CSS, here are a couple of good introductions (one video / one article) that cover a lot more than the one topic I’ve discussed above:

Customizing the Appearance of an Embedded YouTube Video

As you may know, UA has a YouTube channel with some really nice video content that you may be interested in linking to or embedding on your website.  If you are interested in embedding YouTube video, there are a number of parameters that you can modify to customize the way the YouTube video appears within the context of your web page.

The first step in embedding a YouTube video is to point your browser to the YouTube page for the video you wish to embed.  On the right side, under the information about the video, you will see two fields, one for URL and one for Embed.  If you wanted the URL to make a link to the video, you would choose URL and copy and paste the URL code to make your link.

For the purposes of this post, we are interested in the Embed code.  If you just want to use the default parameters for your embed, simply click the box next to the word Embed, at which time the code will become highlighted/selected, copy the code, and then paste it into the markup for your website wherever you want to embed the video content.

Customize YouTube

Customize YouTube

But what if you wanted to customize the look of this embed.  For example, maybe you don’t want the title and rating information that YouTube displays by default on your embedded video.  Many aspects of the video’s appearance can be modified through a combination of the “Customize” interface on YouTube and within the embed code itself.

You might notice, however, that when you click that code (or click the blue “gear” icon), some information will appear below the code that allows you to check or uncheck various boxes such as “Include related videos” and “Show border.”  In addition to these checkboxes, you’ll also have the ability to choose from various color combinations for the border and select length/width dimensions for your video.

As with most social media tools, it’s likely that the options on this customization panel will change over time, but that’s the kind of thing you can do within the YouTube video page itself for now.

The other way to modify the settings of the YouTube video is by adding and modifying parameters associated with the object and embed tags in the markup of your web page.

For instance, if you do not want title and rating information to show on the movie, you would add &showinfo=0 to the YouTube URL:




Notice in this sample code that rel=0 and border=1 have already been added based on what we did earlier in the YouTube customization panel.

By embedding the video with these modified parameters, we are able to make the following customizations:

  • Our video will have a gray border (this happens to be the default when a border is used but if we used one of the other colors a hexadecimal code would be included in the parameters)
  • Related videos will not be offered at the end of the video
  • The title and rating will not display at the top of the video

You can see an example of one of these customized videos on a recent post on Bamalog (the UA Undergraduate Admissions blog). Just view source to see the markup used to customize the video.

Note:  I apologize for not putting the full code for the YouTube embed and a sample video within this WebTide post but it turns out that WordPress.com has some problems with displaying these code samples and with rendering the customized YouTube video. These limitations are specific to WordPress.com blogs and do not affect self-hosted WordPress blogs and sites. In fact, the Bamalog example above is in a self-hosted WordPress installation.

UA HTML E-mail Templates

As part of our effort to use the UA Web Guide as a fluid and regularly updated toolkit, a new resource has been added:  HTML E-mail templates.  Because HTML email has become more important recently and with it comes more and more questions about how to develop and send these emails, we went ahead and developed a set of HTML email templates, much like the web templates, for use by anyone on campus.

There are several options, including some that do not require design modifications.  However, we do have some templates that offer maximum customization by designers.  The templates are packaged with all HTML and images needed to create customized e-mails or you could use the “out-of-the-box” templates and simply add your content with minimal effort.

In addition to these templates, the Web Guide also lists several design guidelines and resources should you choose to go down the fully customized route.  Feel free to use these templates as a good starting point, though.  I leaned heavily on Campaign Monitor’s already fantastic work on testing and establishing any kind of email standards, so if you are starting out new, that’s where I would go first.

Hopefully, these email templates will be as helpful to the UA community as our web templates have been.  Comments and suggestions are welcome!

Web Standards self-study curriculum

In Web Communications, we are big proponents of adhering to Web Standards as we develop and manage web sites.  This is an important area to be well-versed in for web designers, because web standards have evolved from being a grassroots effort into being a pretty commonly-accepted platform on which to build web sites.  But what are web standards, truly?  That’s a challenge to communicate and educate.

There is a new resource called WaSP InterAct that encompasses a lot of the web standards approach, and it’s a free open-source resource for all to use and share.  You may already know a lot of this, but there’s a lot of good information there that might be helpful.  And even if you’re an old pro at this, it might be worth a look to refresh yourself in not only WHAT you do, but WHY you do it.

The curriculum is available in the form of open-source, independent study courses at http://interact.webstandards.org/curriculum/.

Common style sheets across multiple sites

While designing UA News, Dialog, and Research Magazine, it quickly became apparent that the similarities between the three sites lent itself well to using a common style sheet.  Because these sites share content and are related in some way, it was important that the design elements should be similar across the board to create that feeling that they were all connected—a suite of sites. Creating this sense of connection is something that the Admissions sites have done very well.

In order to make this common style sheet work, I needed two files:

  • common.css
  • style.css

The common.css file held 95% of all basic styles, margins, paddings, colors, and whatever else is needed.  Ideally, I wanted each site to pull as much from this CSS as possible and, where needed, overwrite the common styles with specific directives from style.css.

A very simple, but great, example of how this is useful can be seen with each site’s text headings.

common.css

h1, h2, h3, h4, h5, h6{
	font-family:Georgia, Verdana, sans-serif;
	font-weight:normal;
	color:#2e363a;
	margin-bottom:10px;
	padding-bottom:5px;
}

Research Magazine style.css

h1, h2, h3, h4, h5, h6{
	font-family:Arial, Verdana, sans-serif;
}
h1{
	color:#333333;
	border-bottom:#333333 solid 4px;
}

As you can see, the common font is set at Georgia plus a few other such as color and padding. To create a unique look on Research, all I do is declare a new font and other styles on my site specific style sheet.

The main advantages of using multiple style sheets is that it makes it easier to make changes to generic styles across all sites quickly.  The disadvantage is that it can sometimes be hard to manage.  Some may cite performance issues, but the style.css files are so small I can’t see that being a problem.

With all of that being said, I think the advantages of being able to control 95% of the styles for three sites in one file far outweighs the disadvantages.

One way to do rounded rectangles with CSS background images

I recently completed a redesign of the K-12 Summer Programs website, which provides information on UA summer camps for young people, from toddlers to high school students. The page layout comes from a standard template I use for Undergraduate Admissions microsites, with a crimson nameplate bar at the top of the page and a gray footer at the bottom. This particular microsite is customized with a background taken from the print brochure for K-12 Summer Programs.

I decided to use rounded rectangles as containers for the information about each summer camp. There are a number of ways to make rounded rectangles, but I thought I’d quickly explain the technique I used in case anyone else finds it useful.

I should mention that I considered using the CSS3 border-radius property, but it is not supported by Internet Explorer, and I decided the rounded rectangles were too important to the site’s design to have 75% of users not see them.

Basically the method I used was to separate each rounded rectangle into 3 divs. One div (campboxtop) forms the top of the rounded rectangle, another (campboxbottom) forms the bottom of the rectangle, while the div in the middle (campbox) holds the content for each camp.

The way to do this is pretty simple. In Photoshop or your image editor of choice, just create a rounded rectangle of the size you need. Then, crop out everything except the top part (something like this). Make sure that your crop leaves the curve of the corners so that it can be joined smoothly with a rectangle below it to form the rounded rectangle on our page.

Export your top rectangle to the appropriate web format (.gif or .jpg), and then undo the crop so you are left with your original rounded rectangle. From there, do a crop of the bottom of the rectangle the same way you did the top and export it to web format.

Now you have the background images for the top and bottom of your rounded rectangle. At this point, you can write the CSS that puts those images to use, which in my case ended up looking like this:

.campboxtop {background-image:url(images/campboxtop.gif);
background-position:top center;
margin-top:20px;
display:block;
width:540px;
height:19px;
}

.campboxbottom {background-image:url(images/campboxbottom.gif);
background-position:bottom center;
display:block;
width:540px;
height:19px;
}

.campbox {background-color:#eae5d1;
padding:1px 20px 1px 15px;
}

Note the use of 1px padding on the top and bottom of the campbox div. I found that using no padding there resulted in a gap between the bottom part of the rounded rectangle and the campbox div.

Within the campbox div, I use an h2 and paragraph tags to mark up the content. Combining that with empty divs for the top and bottom of the rectangle, the HTML for one camp entry looks like this:

<div class=”campboxtop”></div>

<div class=”campbox”>

<h2>Capstone Summer Honors Program</h2>

<p class=”campdate”>June 1 – July 5</p>

<p>Would you like to earn college credit while getting a taste of college life—before you graduate from high school? Check out the Capstone Summer Honors Program. Through this program, you can enroll in 2 three-hour, college-level courses and in a one-hour honors course during the first term of the UA summer session. You’ll stay in a UA residence hall, dine in one of the many Bama Dining facilities, and enjoy membership privileges at the Student Recreation Center. For qualified high-school juniors.  Priority deadline: March 30. The cost is $1500.00. </p>
</div>
<div class=”campboxbottom”></div>

I tested the K12-Summer Programs website in Firefox, Safari 4, Internet Explorer 6/7/8, and Opera, and it worked fine in all. Better cross-browser support of the CSS3 border-radius property will certainly make it easier to work with rounded rectangles, but the technique outlined above is working in the meantime.

View K-12 Summer Programs website