Saturday 29 November 2014

Week 14: CSS Animations

What is CSS Animations?

CSS Animations is a proposed module for Cascading Style Sheets that allows the animation of HTML document elements using CSS.With CSS3, we can create animations which can replace Flash animations, animated images, and JavaScript's in existing web pages.


Browser Support? 


Here is a video to demonstrate how use use certain css animations:




With CSS animation now supported in both Firefox and Webkit browsers, there is no better time to give it a try. Regardless of its technical form, whether traditional, computer-generated 3-D, Flash or CSS, animation always follows the same basic principles. In this article, we will take our first steps with CSS animation and consider the main guidelines for creating animation with CSS. We’ll be working through an example, building up the animation using the principles of traditional animation. Finally, we’ll see some real-world usages.


Before diving into the details, let’s set up the basic CSS:
Animation is a new CSS property that allows for animation of most HTML elements without JavaScript or Flash. At the moment, it’s supported in Webkit browsers, including Safari 4+, Safari for iOS (iOS 2+), Chrome 1+ and, more recently, Firefox 5. Unsupported browsers will simply ignore your animation code, so ensure that your page does not rely on it!
Because the technology is still relatively new, prefixes for the browser vendors are required. So far, the syntax is exactly the same for each browser, with only a prefix change required. In the code examples below, we use the -webkit syntax.
All you need to get some CSS animation happening is to attach an animation to an element in the CSS:
/* This is the animation code. */
@-webkit-keyframes example {
   from { transform: scale(2.0); }
   to   { transform: scale(1.0); }
}

/* This is the element that we apply the animation to. */
div {
   -webkit-animation-name: example;
   -webkit-animation-duration: 1s;
   -webkit-animation-timing-function: ease; /* ease is the default */
   -webkit-animation-delay: 1s;             /* 0 is the default */
   -webkit-animation-iteration-count: 2;    /* 1 is the default */
   -webkit-animation-direction: alternate;  /* normal is the default */
}



Principles of Traditional Animation

Squash and Stretch 

The crude bouncing ball is a great demonstration of this first point. If the ball falls at a high velocity and hits the floor, you’ll see it squash down from the force and then stretch back out as it bounces up.
At a basic level, this should give our animation a sense of weight and flexibility. If we dropped a bowling ball, we wouldn't expect it to flex at all it might just damage the floor.

Staging

Try to give a stage to the scene; put the animation in context. Thinking back to Disney films, what would they be without the fantastic background artwork? That’s half of the magic!
The stage is also key to focusing attention. Much like on a theater stage, lighting will be cast on the most important area. The stage should add to the illusion. With our bouncing ball, I’ve added a simple background to focus on where the ball will land. Now the viewer knows that the action will take place in the center, and the scene is no longer lost in snow.

For more information and example follow the links below:



Friday 28 November 2014

Week 13: Infinite Scrolling

Our blog this week focuses on the topic of Infinite Scrolling. What comes to your mind when you hear the term infinite scrolling ?


Infinite Scrolling is a web design technique that prevents the browser scroll bar from scrolling to the bottom of the page, causing the page to grow with additional content instead. Infinite Scroll is a feature that loads the next set of posts automatically when visitors approach the bottom of the home page or posts page. It’s designed to help visitors read through many posts without effort.
When you get to the bottom of the page, you’ll see a loading icon display briefly as the next seven posts load below.



Some advantages of Infinite Scrolling

Perfect for Touch

It is of utmost importance to have equally good UX on both desktop and mobile devices. And since most of the tablets and mobile phones are made with touch technology you would prefer to focus on touch optimization. The small screen size of a mobile device demands a forward-thinking technology to display the content in a way that is more convenient for the user. Making users to tap those tiny page links to get to a new bunch of content is far from being usable.

Visual Oriented

Who doesn’t like high quality beautiful images? This is probably another emerging trend on the web that is based on “a picture is worth a thousand words” principle. And the best way to deliver image-heavy content appears to be infinite scrolling. This way users won’t be distracted from their delightful experience by the need to find and click the next link. Pinterest and Flickr are great examples of how visual oriented websites benefit from infinite scrolling.

Better Content Exposure

Regardless of the type of content your website is offering you would like to get as much impressions for it as possible. In case of content pagination users won’t see what’s on the next page until they click it, while infinite scrolling puts all your content on one endlessly long page. Everything is within a “scroll’s reach”.
Fast and Easy Browsing
Infinite pages are usually faster than regular webpages. The reason is that as the user scrolls down the page, more content loads automatically in the same page eliminating the need for clicking on page links and reloading pages every time. This saves time, which is good not only from a user’s but also from SEO perspective.

More Room for Creativity
Infinite scrolling itself is a quite innovative way for displaying information, yet it also holds a huge potential for creative outbursts. In the hands of a web design virtuoso infinite scrolling can turn into something not only interesting and usable but also fun. A very popular creative extension of infinite scrolling is the parallax scroll technology that creates beautiful visual storylines through scrolling.
This is how a website with Infinite scrolling looks like:







Some disadvantages of Infinite Scrolling 


Footer Problem
This is a very big issue especially for ecommerce websites. If you have made an online purchase at least once you know exactly where all the important links are located: in the footer. Now imagine you want to visit the “Shipping information” page on an infinite scrolling webpage. Catch it if you can! It is pretty annoying when you have just a few seconds to find and click on that link until it “scrolls away”.

Disorientation
Everything there is on the web is basically recreated from the real world, right? From this point of view anything that is infinite is already unnatural and contradictory. If there is no order we won’t be able to handle the immense amount of information that flows into our lives every day. And we come across the same issue with infinite scrolling. It lacks orientation and users have difficulty finding something they have previously seen on the page. They are unable to mentally locate that item and easily come back to it afterwards. In case of paginated content at least you can relatively map the information with the help of page numbers.Moreover, that scroll bar on the left gives inaccurate information about the amount of content that is left to load and users feel cheated and annoyed when they realize there is still more to come.

Navigation Issues
One of the very basic UX principles states that users need to always know where they are in the hierarchy of a website. This is essential for website usability. In case of infinite scrolling it is very difficult if not impossible to understand where you are at a given point. Moreover, when you click on an item and then want to go back where you left, the “pogosticking” thing happens and you are brought back to the very top of the feed. Imagine how annoying that is.

No Skipping
One of the biggest advantages of paginated content is that when needed you can skip the first let’s say 100 pages and go straight to 101st, which is impossible with infinite scrolling. Users can’t even nearly imagine the amount of content there is, let alone skip a part of it.
Browser crash. No new technology works flawlessly on all browsers and infinite scrolling is not an exception. When a big amount of content is loaded the memory of a computer, especially an older one can easily crash. You don’t want such UX, do you?

Overwhelming Content
It’s always good to have lots of quality information on a website. But when there is infinite content loading every second users may feel out of control and exhausted. It’s like a pleasant road trip that has no destination and never ends. Knowing there is so much more information out there users are unable to stop until they get bored and psychologically daunted.

Hear is a clip of how infinite scrolling is implemented using word press



A very good example of such creative approach can be found below:
Link 1
Link 2

Friday 21 November 2014

Week 12: Parallax Scrolling

This weeks blog will be exploring the topic of Parallax Scrolling. What comes to mind when you hear the term?

Parallax scrolling is a special scrolling technique in computer graphics, wherein background images move by the camera slower than foreground images the term “parallax” first came from the visual effect of 2D side scrolling videogames that used different background image movement speeds to create the illusion of depth during gameplay. This was generally done by making the background of the game move slower than the foreground in order to make it seem further away. This same concept applies to parallax site design in which the background of the website moves at a different speed as the rest of the page for an impressive visual effect that allows for countless creative applications for online storytelling.

The Advantages:
Parallax design gives websites a great opportunity to:

  • Wow viewers with page depth and animation
  • Take a story-telling approach to guide visitors through the site
  • Make page visits last longer by encouraging visitors to scroll through the entire page
  • Provoke curiosity
  • Direct visitors to calls to action
  • Reenforce website credibility with innovative interactive viewing
How a website with parallax scrolling looks:


The Disadvantages:

With all of these benefits of parallax site design, there are also several downsides to having a parallax site. Most of these problems stem from the fact that the majority of parallax websites only have a single long page which is extremely detrimental to the site’s SEO as well as load speed. Here are some of the negatives to using parallax scrolling design:

  • SEO takes a hit, websites with a single page allow only one set of meta information, one effective h1 tag, and one URL
  • A ton of images and other information on one page cause slow load times, causing frustrated visitors to leave the page before they even see it
  • Not compatible with responsive and mobile design
  • No internal page linking throughout the website

Tips:
A few more things to keep in mind when you’re designing a parallax website are:

  • Don’t overdo it to make your site too complicated
  • Use it to tell a visual story
  • Make it fun and engaging with depth using layering
  • Emphasize calls to action when directing the visitor through the site
  • Account for older browsers and mobile browsing
Here are some links to interesting parallax solutions I've come across:
SoneilNoir

Want to explore some Parallax Scrolling website like the link below
LINK

Thursday 13 November 2014

Week 11 :Browser Compatibility

In this weeks blog we will be looking into the topic of Browser Compatibility

If you’ve tried using different Web browsers to surf to your favourite online hangouts, you’ve probably noticed that the same sites look a little different depending on which browser you’re using. That’s because page display varies according to browser compatibility.


Browser compatibility is the ability of the Web browser to properly interpret the hypertext markup language (HTML) that renders Web pages. HTML is a coding language that is “understood” a little differently by each Web browser. Most sites are designed to look correct in Microsoft’s Internet Explorer, because it is believed to be the most ubiquitous browser. However, if you are a Web designer, your task is to code a site for maximum compatibility so that the pages look correct in other popular browsers as well, such as FireFox, IE, Opera, Safari, Google and text-based browsers.



When coding your website you must consider the following:


Test your site in as many browsers as possible


Once you've created your web design, you should review your site's appearance and functionality on multiple browsers to make sure that all your visitors are getting the experience you worked so hard to design. Ideally, you should start testing as early in your site development process as possible. Different browsers - and even different versions of the same browser - can see your site differently. You can use services such as Google Analytics to get a good idea of the most popular browsers used to view your site.


Write good, clean HTML

While your site may appear correctly in some browsers even if your HTML is not valid, there's no guarantee that it will appear correctly in all browsers or in all future browsers. The best way to make sure that your page looks the same in all browsers is to write your page using valid HTML and CSS, and then test it in as many browsers as possible. Clean, valid HTML is a good insurance policy, and using CSS separates presentation from content, and can help pages render and load faster. Validation tools, such as the free online HTML and CSS validators provided by the W3 Consortium, are useful for checking your site, and tools such as HTML Tidy can help you quickly and easily clean up your code.

Consider accessibility

Not all users may have JavaScript enabled in their browsers. In addition, technologies such as Flash and ActiveX may not render well (or at all) in every browser. We recommend following our guidelines for using Flash and other rich media, and testing your site in a text-only browser such as Lynx. As a bonus, providing text-only alternatives to rich-media content and functionality will make it easier for search engines to crawl and index your site, and also make your site more accessible to users who use alternative technologies such as screen readers.
Here is a video to further explain:
Popular Browser Downloads:

For ways on how to create cross browser compatibility in HTML click here
Additional Info:

Sunday 9 November 2014

Week 10: Responsive Design

In this weeks blog will look into the topic of "Responsive Design."

Before we go any further we first need to know what a responsive design is.
A responsive web design term is related to the concept of developing a website design in a manner that helps the lay out to get changed according to the user’s computer screen resolution. More precisely, the concept allows for an advanced 4 column layout 1292 pixels wide, on a 1025 pixel  width screen, that auto-simplifies into 2 columns. Also, it suitably fixes on the smartphone and computer tablet screen. This particular designing technique we call “responsive design”.

Responsive web designing is an entirely different designing version than traditional web designing, and developers must know about the pros and cons of responsive web designing. This blog is a mighty example of the approach so we will reveal a few facts about the uses of responsive web designing. The basic instinct might be to choose media queries to develop a responsive site. However, the hassle one faces with media queries is that new queries can pop up from moment to moment; each time, the user experiences sudden and drastic changes to the look and organization of the site. Experts suggest using some CSS transitions to ease the jump.

Example of Responsive Websites


Though nowadays this greyish grid-style static website looks a bit boring and dull, however when it was released it caused some kind of furor with its high-end layout.The main reason was that the designer primarily focused its attention on responsive behavior that was only gaining popularity those days thereby providing ordinary developers with a representative example of how regular grid-style layout should gracefully transform.



Sparkbox demonstrates a basic structure of a corporate website. The layout is pretty simple; it is based on a standard, commonly-used set of horizontal stripes that present data in a non-intrusive manner. Such structure is really easy to adapt to various screen sizes. The sequential arrangement of blocks deprived of embellishments undergoes changes quite smoothly and effortlessly, giving users a nice-looking and well-organized layout.

Watch this tutorial to aid in creating your responsive sight

For more information click:


Friday 31 October 2014

Week 9: Minimalism/Flat Design

In this weeks blog we look on the topic of Flat Design

What is Flat Design?
Flat User Interface Design is a minimalist UI Design Genre, or design language, currently used in various graphical user interfaces such as Web sites or Web applications.
What is  its purpose?
Flat design refers to a style of interface design which removes any stylistic choices that give the illusion of three-dimensions such as drop shadows, gradients, or textures and is focused on a minimalist use of simple elements, typography and flat colors. Designers may prefer flat design because it allows interface designs to be more streamlined and efficient. It is easier to quickly convey information while still looking visually appealing and approachable.Additionally, it makes it easier to design an interface that is responsive to changes in browser size across different devices. With minimal design elements, websites are able to load faster and resize easily, and still look sharp on high-definition screens. As a design approach, it is often contrasted to skeuomorphism  and rich design.

Need assistance in making a Flat Design for your Website watch the video below




How and when should I use flat design?

Like most new trends you are probably asking why you should use flat design when it comes 
to your design projects  especially when more decorative, 3D elements have taken such a dominant role within technology.Well when you think of it like that, why wouldn’t you want to take a step in a different direction? Flat design is a refreshing direction for the design community whether you are for the trend or against it.
As you have probably noticed more and more designers are embracing the trend and implementing it in their personal portfolios, design agency websites, mobile navigation menus and in so many other areas to mostly positive reception.Flat design does have its problems and detractors. If all interface elements are truly flat, how do we identify what parts are interactive and what is decoration? Buttons and panels can look the same.
This by no means should be a deterrent  you can design around these potential limitations. The great thing about using flat elements is that it tends to give your final look a clean and minimalistic feel. Flat design look is also so simple that you are often able to combine various trends without your design appearing cluttered. It also generally cuts down on development time and makes for more readable, navigable content. The overall user experience is heightened with not only the ability to read the content but to also easily navigate from page to page and from content to content. So, now that you understand flat design, lets run through two short tutorials to get you creating your own flat elements.

An example of how a flat design layout looks

For a better view on how flat designs look click here 

Saturday 25 October 2014

Week 8: Typography

Typography


In this weeks blog I will be discussing the topic typography.
Typography is the art and technique of arranging type to make written language most appealing to learning and recognition. The arrangement of type involves selecting typefaces, point size, line length, line-spacing, letter-spacing, and adjusting the space within letters pairs.
Text is meant to be read. If it feels difficult to read, people won’t want to read it. One factor that affects readability, and a great place to start, is choosing a legible font.
When we read, we don’t see individual letters; we see (and read) the shapes of the words. These shapes are created primarily by two elements: the strokes of the letters and the spaces in and around the letters. If we lose either of these elements, legibility is compromised.
Did you ever try to read a poor photocopy of a photocopy of a photocopy? Experience tells you that type becomes harder to read with each generation of copying. Why does this happen? Sometimes, multiple-generation photocopies make the text lighter. Thinner strokes start to disappear, leaving only parts of letters and compromising the word shapes. At other times, multiple-generation photocopies make the strokes in the text thicker. The spaces in and around the letters start to disappear. Either way, when strokes or spaces get lost, the legibility of the font changes, and reading becomes more difficult.

Web typographers need to pay particular attention to the strokes and spaces in a font because of screen resolution. Thin strokes and small spaces in letter forms can start to disappear, and as in the photocopy example, the text gets harder to read.