Posts Tagged ‘CSS’

Freebie: Colorful 3D UI Kit


We have a fantastic freebie for all of you web designers out there, you’ll love this:)
Designed by Land-of-Web, the Colorful 3D UI Kit comes in .psd format and is full of beautifully designed modern web elements covering almost all aspects of web design, including:

• Drop-Downs, Silders & Progress Bars
• Switches, Tabs, Icons, Tool-Tips and many useful Navigation Elements
• Search and Select Boxes
• Media Control Buttons and Mini Player

UI Kit Preview

Colorful 3D UI Kit

Download the UI Kit

Within the .zip file you will find all of the .psd elements from above.
Download: Colorful 3D UI Kit

Copyright

This Web UI set is free for personal and commercial use with attribution appreciated but not required. You MAY NOT re-upload or re-distribute this set on any other website, and please link directly to this page for all sharing.

Thanks

Big thank you to Nataly from Land-of-Web for designing and allowing us to release this fantastic freebie. You can also follow her on Twitter.

You might also like…

Fantastic Freebie: 3D Web UI Kit →
20 Free Web UI Element Kits and Stencils →
A Collection of Printable Web Browser Sketching and Wireframe Templates →
10 Completely Free Wireframe and Mockup Applications →
A Collection of Useful Web Design Wireframing Resources →
40 Detailed and High Quality Mobile Phone .psd Source Files →
40 Professional and Detailed Web Layout PSD Templates →
Android App Developers GUI Kits, Icons, Fonts and Tools →
iPhone and iPad Development GUI Kits, Stencils and Icons →
Illustrator Template Toolbox for Web, Mobile and App Developers →
40 High Quality CSS and XHTML Web Layout Templates →



Weekly Design News – Resources, Tutorials and Freebies (N.117)


This is our weekly column were we share our favorite design related articles, resources and cool tidbits from the past week. Enjoy :)
If you would like to receive our daily updates and keep up to date with the latest and greatest articles and resources from the design community, you can follow us on Twitter, on Facebookor by subscribing to our RSS feed.

Developing a Responsive Website: Background Images

Developing a Responsive Website: Background Images

Webfont Icons: an Alternative to Images

Webfont Icons: an Alternative to Images

How Commercial Plugin Developers Are Using The WordPress Repository

How Commercial Plugin Developers Are Using The WordPress Repository

HTML5 Reset Version 2

HTML5 Reset Version 2

The All-New CSS3 Click Chart

The All-New CSS3 Click Chart

Animated Web Banners With CSS3

Animated Web Banners With CSS3

Prevent Password Reset WordPress Plugin

Prevent Password Reset WordPress Plugin

iPhone, iPad & Browser Wireframe Templates

iPhone, iPad & Browser Wireframe Templates

Meander Free Font

Meander Free Font

Free Typeface NeoDeco

Free Typeface NeoDeco

Social Media Icons Pack

Social Media Icons Pack

Mini Cards: 15 Credit/Debit Card Icons

Mini Cards: 15 Credit/Debit Card Icons

This Week on CodeVisually

We recently launched CodeVisually, our site that focuses solely on resources and tools for web developers and offers a simple solution to painlessly find the resource needed and fast.

Here are our favorite webdev resources from the past week:

Create

Create

CraftMap

CraftMap

ResponsiveSlides.js

ResponsiveSlides.js

impress.js

impress.js

Revolver.js

Revolver.js

PxLoader

PxLoader

W3Clove

W3Clove

CSSrefresh

CSSrefresh

Previous Weekly Design News…

Design News Roundup Archives →



How To Create CSS-Based Content Accordion

In today’s tutorial we are going to learn how we can create a horizontal and vertical content accordion by just using CSS3. There are many jQuery plugins out that can do this job for you but what do you do if the visitor has Javascript turned off, then the accordion won’t work correctly. If your accordion is purely in CSS then it will work for all your visitors.

We are going to create a horizontal and vertical content accordion. On clicking the headline text the slide will open displaying the full content, and here’s a quick preview (screenshots) how they look like.

css based accordion How To Create CSS Based Content Accordion

Like what you see? Let the coding begin!

1. Preparing HTML and Content

To start with we are going to create the HTML for the accordion.

The structure needs a container div and then have a section for each slide in the accordion. In this example we are going to have 5 slides. Each of the slides are going to have a title and a paragraph for the content.

<div class="accordion horizontal">
    <section>
        <h2>About Us</h2>
        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse id lobortis massa. Nunc viverra velit leo, sit amet elementum mi. Fusce posuere nunc a mi tempus malesuada. Curabitur facilisis rhoncus eros eget placerat. Aliquam semper mauris sit amet justo tempor nec lacinia magna molestie. Etiam placerat congue dolor vitae adipiscing. Aliquam ac erat lorem, ut iaculis justo. Etiam mattis dignissim gravida. Aliquam nec justo ante, non semper mi. Nulla consectetur interdum massa, vel porta enim vulputate sed. Maecenas elit quam, egestas eget placerat non, fringilla vel eros. Nam vehicula elementum nulla sed consequat. Phasellus eu erat enim. Praesent at magna non massa dapibus scelerisque in eu lorem.</p>
    </section>

    <section>
        <h2>Services</h2>
        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse id lobortis massa. Nunc viverra velit leo, sit amet elementum mi. Fusce posuere nunc a mi tempus malesuada. Curabitur facilisis rhoncus eros eget placerat. Aliquam semper mauris sit amet justo tempor nec lacinia magna molestie. Etiam placerat congue dolor vitae adipiscing. Aliquam ac erat lorem, ut iaculis justo. Etiam mattis dignissim gravida. Aliquam nec justo ante, non semper mi. Nulla consectetur interdum massa, vel porta enim vulputate sed. Maecenas elit quam, egestas eget placerat non, fringilla vel eros. Nam vehicula elementum nulla sed consequat. Phasellus eu erat enim. Praesent at magna non massa dapibus scelerisque in eu lorem.</p>
    </section>

    <section>
        <h2>Blog</h2>
        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse id lobortis massa. Nunc viverra velit leo, sit amet elementum mi. Fusce posuere nunc a mi tempus malesuada. Curabitur facilisis rhoncus eros eget placerat. Aliquam semper mauris sit amet justo tempor nec lacinia magna molestie. Etiam placerat congue dolor vitae adipiscing. Aliquam ac erat lorem, ut iaculis justo. Etiam mattis dignissim gravida. Aliquam nec justo ante, non semper mi. Nulla consectetur interdum massa, vel porta enim vulputate sed. Maecenas elit quam, egestas eget placerat non, fringilla vel eros. Nam vehicula elementum nulla sed consequat. Phasellus eu erat enim. Praesent at magna non massa dapibus scelerisque in eu lorem.</p>
    </section>

    <section>
        <h2>Portfolio</h2>
        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse id lobortis massa. Nunc viverra velit leo, sit amet elementum mi. Fusce posuere nunc a mi tempus malesuada. Curabitur facilisis rhoncus eros eget placerat. Aliquam semper mauris sit amet justo tempor nec lacinia magna molestie. Etiam placerat congue dolor vitae adipiscing. Aliquam ac erat lorem, ut iaculis justo. Etiam mattis dignissim gravida. Aliquam nec justo ante, non semper mi. Nulla consectetur interdum massa, vel porta enim vulputate sed. Maecenas elit quam, egestas eget placerat non, fringilla vel eros. Nam vehicula elementum nulla sed consequat. Phasellus eu erat enim. Praesent at magna non massa dapibus scelerisque in eu lorem.</p>
    </section>

    <section>
        <h2>Contact</h2>
        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse id lobortis massa. Nunc viverra velit leo, sit amet elementum mi. Fusce posuere nunc a mi tempus malesuada. Curabitur facilisis rhoncus eros eget placerat. Aliquam semper mauris sit amet justo tempor nec lacinia magna molestie. Etiam placerat congue dolor vitae adipiscing. Aliquam ac erat lorem, ut iaculis justo. Etiam mattis dignissim gravida. Aliquam nec justo ante, non semper mi. Nulla consectetur interdum massa, vel porta enim vulputate sed. Maecenas elit quam, egestas eget placerat non, fringilla vel eros. Nam vehicula elementum nulla sed consequat. Phasellus eu erat enim. Praesent at magna non massa dapibus scelerisque in eu lorem.</p>
    </section>
</div>

Now we have our slides we can begin to style the accordion.

2. CSS Styling

First we need to style the containing div of the accordion. This will give us an idea of how to display each of the slides and each of the headlines.

/*Define Accordion box*/
.accordion {
     width:830px;
     overflow:hidden;
     margin:10px auto;
     color:#474747;
     background:#414141;
     padding:10px;
}

Next we are going to create the headlines for each of the slides.

.accordion section{
      float:left;
      overflow:hidden;
      color:#333;
      cursor:pointer;
      background: #333;
      margin:3px;
}
.accordion section:hover {
      background:#444;
}

We are setting the background color to be dark grey on the section to be the headline where the visitors will click to display the slide. We are using this section for both the headline and the content which means we are able to use less HTML and reuse the title of the slide as the headline of the content.

.accordion section p {
      display:none;
}

At the moment all the slides will be closed so we need to make sure that the paragraph is hidden from view until the slide is open, so for now set the display of the paragraph to none.

.accordion section:after{
      position:relative;
      font-size:24px;
      color:#000;
      font-weight:bold;
}
.accordion section:nth-child(1):after{ content:'1'; }
.accordion section:nth-child(2):after{ content:'2'; }
.accordion section:nth-child(3):after{ content:'3'; }
.accordion section:nth-child(4):after{ content:'4'; }
.accordion section:nth-child(5):after{ content:'5'; }

With the slides closed we want to display a number at the bottom of the headline to say which number slide we are on. For this we are going to use CSS to add content after the section headline, this can be done by using the :after pseudo-class selector.

Now we have created the headline for the slide we can make the click event to display the slide in the accordion. But there is a problem, CSS doesn’t have a click event, which is why the accordion is normally created by using jQuery so we can attach a click event to the headline text.

We need to mimic the click event in CSS which can be done by using the :target pseudo-class selector.

3. Using :target pseudo-class Selector

:target allows us to style the fragment identifier. Sometimes we use an on-page anchor tag to point to a place on the page. On clicking the link the id in the anchor tag becomes the target and you can style this by using the :target selector.

To add this into the accordion we need to add a link around the headline pointing to an id of the slide.

<section id="about">
	<h2><a href="#about">About Us</a></h2>
	<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse id lobortis massa. Nunc viverra velit leo, sit amet elementum mi. Fusce posuere nunc a mi tempus malesuada. Curabitur facilisis rhoncus eros eget placerat. Aliquam semper mauris sit amet justo tempor nec lacinia magna molestie. Etiam placerat congue dolor vitae adipiscing. Aliquam ac erat lorem, ut iaculis justo. Etiam mattis dignissim gravida. Aliquam nec justo ante, non semper mi. Nulla consectetur interdum massa, vel porta enim vulputate sed. Maecenas elit quam, egestas eget placerat non, fringilla vel eros. Nam vehicula elementum nulla sed consequat. Phasellus eu erat enim. Praesent at magna non massa dapibus scelerisque in eu lorem.</p>
</section>
.accordion section:target {
      background:#FFF;
      padding:10px;
}
.accordion section:target:hover {
      background:#FFF;
}
.accordion section:target h2 {
      width:100%;
}
.accordion section:target h2 a{
      color:#333;
      padding:0;
}
.accordion section:target p {
      display:block;
}
.accordion section h2 a{
      padding:8px 10px;
      display:block;
      font-size:16px;
      font-weight:normal;
      color:#eee;
      text-decoration:none;
}

The above code will change the size of the slide to fit the rest of the accordion and changes the background color to white. The paragraph was hidden so now on target we need to display the paragraph.

Now when you click on the headline of the accordion the slide will change style to display the content of the slide.

4. Horizontal Accordion

The above code will create the general accordion now we can start to make the CSS changes for the differences between the horizontal and vertical accordion. Both these accordions have the same functionality but the headline styling would be different.

.horizontal section{
      width:5%;
      height:250px;
      -moz-transition: width 0.2s ease-out;
      -webkit-transition:width 0.2s ease-out;
      -o-transition:width 0.2s ease-out;
      transition:width 0.2s ease-out;
}

First we set the width of the headline section to 5% so it is a closed slide. As the section is both the headline and the content for the slide we need to add the animation to display the content by using the transition property.

/*Position the number of the slide*/
.horizontal section:after{
      top:140px;
      left:15px;
}

The position of the number on the slide will be the same position on each closed headline these are positioned differently to the vertical headlines.

/*Header of closed slide*/
.horizontal section h2 {
     -webkit-transform:rotate(90deg);
     -moz-transform:rotate(90deg);
     -o-transform: rotate(90deg);
     transform: rotate(90deg);
     width:240px;
     position:relative;
     left:-100px;
     top:85px;
}
/*On mouse over open slide*/
.horizontal :target{
     width:73%;
     height:230px;
}
.horizontal :target h2{
     top:0px;
     left:0;
     -webkit-transform:rotate(0deg);
     -moz-transform:rotate(0deg);
     -o-transform: rotate(0deg);
     transform: rotate(0deg);
}

The above code will change the size of the slide to fit the rest of the accordion. The headline was rotated vertically to run down the headline but now with the slide open we need to change the text back to be horizontal by rotating the text back to 0 degrees.

accordion horizontal How To Create CSS Based Content Accordion

5. Vertical Accordion

The vertical accordion works the same way as the horizontal accordion except we need to change the height instead of the width and we don’t need to change the alignment of the text.

.vertical section{
     width:100%;
     height:40px;
     -webkit-transition:height 0.2s ease-out;
     -moz-transition:height 0.2s ease-out;
     -o-transition:height 0.2s ease-out;
     transition:height 0.2s ease-out;
}

/*Set height of the slide*/
.vertical :target{
     height:250px;
     width:97%;
}

On the target event of the vertical accordion we are going to change the height of the headline to display the slide.

.vertical section h2 {
     position:relative;
     left:0;
     top:-15px;
}
/*Set position of the number on the slide*/
.vertical section:after{
      top:-60px;
      left:810px;
}
.vertical section:target:after{
      left:-9999px;
}

The above will change the position of the headline text on the closed slide. With the closed slide we need to set the position of the number which is located on the right of the accordion. When the slide is open we need to hide this number on headline when the target is set so we change the left position off the screen.

accordion vertical How To Create CSS Based Content Accordion

Now when you click on the headline of the accordion the slide will change style to display the content of the slide.

Demo & Download

View the demo to see this code in action or download the files to see how it’s all put together, or download the file and browse them offline.

What else does HTML5 need to defeat flash? (Part 2)

Advertise here with BSA


In part 1 of this article, we analyzed the technical problems facing HTML5. In part 2, we’re going to discuss the problems facing HTML5 commercially.

Unity:

Microsoft, Google and Apple are clearky the 3 giants of the industry at the moment, and it’s really hard to unify them under a single standard.

“Go, go, go! Fire in the hole!” As Apple declares war on Flash, Microsoft seems willing to watch the fire from the other side of the river. As for Google, it supports HTML5 on the one hand, while on the other it also adds support for Flash in Android. Adobe must find a way to take advantage of the conflict between the giants. The future of HTML5 is at stake.

Let’s suppose that even Adobe is not able to do that. The fighting between the 3 giants would probably ruin the future of HTML5. The famous case of OpenGL is the best example. The initial member of this standard was All-Star Games, but the development and spread was far less rapid than Direct3D due to the endless quarrels around profits. The market is almost entirely taken by opponents, and its application restricted in professional areas.

User acceptance:

No matter how attractive the market promotion is, user acceptance is the final exam standard. At present, HTML5 is not looking like it’s going to be able to bring fundamental change to the desktop in a short period of time, and so there’s a need for a a coexistent relationship with Flash.

The reason for this is that the user doesn’t care about the technology. What they care for is the effect. There is still a long way to go for HTML5 before it reaches the level of effects realized by Flash, and this restricts the willingness of small websites to use canvas. If canvas can’t be popularized then HTML5 is losing a major battle. If the coding problem of video tags can’t be solved, there simply won’t be any way to compete with Flash.

Prediction:

Google, Microsoft, Apple and Adobe are playing cards. Adobe is the banker, and has the best cards. On one hand, the other three want to pull him out of that position. On the other, they don’t want to cooperate with each other. So while establishing an ambiguous relationship with Adobe, Google also has its own plan.

In this game, Adobe dominates the current situation. It seems impossible for HTML5 to take Adobe’s place, because Flash has already taken the ruling position in the traditional desktop market. Even though Flash isn’t perfect, it’s not broken enough to need a replacement. The truth is that the traditional desktop is challenged by new power. There is to be a coexistent period of time between Flash and HTML5 during which the two compete. Adobe has the weapons of Photoshop, Dreamweaver and Fireworks. Webpages cannot be developed without Photoshop, even for the HTML5 webpage. Dreamweaver is the current No.1 choice and canvas applications can be developed usinf Flash CS5.

Flash Player cannot bring direct profit to Adobe, but it symbolizes the standard of the rich media application market. The editor developing Flash is seeing real income. Let’s suppose that in the HTML5 era, the developers still have to choose Adobe products to develop canvas based web interaction. Why then would we need Flash Player? For Adobe, it saves the cost of maintaining a complicated system.

As for Microsoft, it’s a difficult situation. They have the IE card, but they aren’t sure whether it’s a trump card or not. The reason being that IE6 takes a large amount of the market, but the new versions of IE have to compete with former versions. They also have the card of SilverLight, which has a competitive relationship with Flash and HTML5. Support of HTML5 could have a negative effect on SilverLights popularization. Therefore, Microsoft would rather not fully support HTML5. Instead, it will be treated as a supplement of SilverLight.

Apple however has a great plan. They have decided to begin at the mobile platform level, and gradually move to desktop. iPhone is the first successful step. The existence of iPhone proves that Flash is unnecessary in the smart mobile industry. As a matter of fact, the Flash experience in this field is pretty terrible. However, the most important step is iPad. The iPad is almost similar to ordinary computers both in screen size and operation experience. If tablet PCs prove to be comfortable independent of Flash, then why shouldn’t the ordinary PC? If the user gets used to the non-Flash experience of tablet PCs, there’s no hope for Flash anymore. Since iPad came into being, the controversy between Apple and Adobe has escalated, proving the important role of tablet PCs in this battle.

However, is Apple going to realize its dream easily? Apple products perform really well in sales, but aren’t as popular as Microsoft products. The reason being that its culture provides the high-level experience of taste and quality, and that high level experience means a higher price.

Globally speaking, we have developed countries, developing countries and undeveloped countries, where most are without the money to buy Apple products. The people simply can’t pay for the increased quality.

So here comes the question: Is there a company capable of providing a similar experience? What about Microsoft? The answer is no. The reason is that Microsoft provides the service to all people. Its products need to be universal, consistent and not overly expensive. So Microsoft is not motivated to change user experience. They have tried to bring change in Vista, but the result was that XP users got confused and angry.

Maybe, Apple didn’t plan to make iPhones universal at the very beginning. Perhaps focusing on top of the pyramid will guarantee enough income, so does the iPad. It’s not popular enough to challenge the traditional desktop. Users can experience cheaper tablet PCs from other companies, and those tablet PCs will probably support Flash. If things happen in that way, Apple’s plan may end in failure.

As for Google, the result of the war is not too important. As long as users continue using webpages, they doesn’t care whether the web pages are HTML5 or Flash. This doesn’t mean Google is irrelevant though. On the contrary, they are the key factor in this war. Except for YouTube, Google seldom use Flash in their products. Although Flash is functional, it’s not an open product; so Google cannot decide its development direction. An open standard is easier to control for them. Nowadays, the rapid development of Chrome increases Google’s power in HTML5 establishment, but it doesn’t mean they’ll give up on Flash.

Flash is an important tool for Google to restrain Apple. It’s the chip with which Android challenges the iPhone. Last year, Google and Adobe collaborated to put Flash Player plug-ins inside the sandbox within Chrome, which promoted the performance of Flash on safety and resource cost.

Conclusion:

From the above analysis, we can conclude that Flash still controls the market of internet rich media. Its fate in mobile platform will be entirely determined by Google’s attitude.

As for HTML5, there will probably be a rapid development that makes it relatively popular in the next 1 to 3 years. It won’t take the place of Flash though. Instead, they’ll be coexistent for a period of time. Considering of the conflicts among the giants, there isn’t much hope for HTML5. It took so long for browsers to accept the current standard, and it’s going to take a much longer time for them to accept new ones. In this transitional era of Flash to HTML5, there is still a long way to go.

You might also like…

10 Essential Guides, Resources and Tools for Getting Started with HTML5 →
HTML5 and CSS3 Form References, Resources and Tutorials →
10 HTML5-Ready Blank, Bare-Bones and Naked Themes for WordPress →
Beginner’s Study Guide to HTML5 Microformats →
Guide to HTML5′s New Media Tags – Audio and Video →
Coding Flexible Web Layouts in HTML5 and CSS →


Advertise here with BSA


What else does HTML5 need to defeat flash? (Part 1)

Advertise here with BSA


Nowadays, HTML5 is like a shining star in the webs sky. However, is HTML5 ready to take the overall crown? From 2 aspects, we are going to discuss what else HTML5 needs to defeat Flash.

Technically:

First of all, I’d like to emphasize that HTML5 and Flash don’t have many overlapping functions. For example, you can invoke hardware like cameras through Flash; but not HTML5. However, the elements imported by HTML5 do bring some serious competition to Flash.

The most familiar of these features are the canvas and video tags. The other new HTML5 features have very little competitive relationship with Flash, but the canvas and video tags are the key factors that determine the fate of the battle. They’re going to bring some fundamental changes to the entire web industry as long as they’re popularized. In other words, they’re the two major blows HTML5 can lay onto Flash.

Canvas:

Long before Flash took the crown, there were many methods through which web drawing emerged on the market, the most famous being the Java Applet. Those methods competed with each other, with each having their own advantages. But that war quickly ended when Macromedia published Flash.

In order to fight with Flash, many other technologies arose. These included SVG. However, those technologies didn’t stop Flash running away with the top prize. Flash based games and animations crept into every corner of the internet within a very short time.

Now the cycle continues with a new challenger appearing — HTML5′s canvas.

In many ways, canvas does excel over Flash. It doesn’t rely on a plug-in, but instead intimately integrates with the rendering engine of browsers, saving resources and most importantly effectively simplifying the interactivity between images and other elements on the page.

As for Flash, it does take up a lot of time and resources to simply interact with a page. What’s more, it’s inconvenient for programming.

canvas is an element of HTML and it can be operated like any other HTML element. Developers can write all the code in one file, which does reduce the difficulty of maintenance and updates.

However, canvas also has disadvantages:

1. Developers do have to describe every dot and graphic curve in the program; so they do have to deal with matrix transformation in cases of rotation and zoom. This increases the difficulty of drawing complicated pictures. Whereas in Flash, the image display API is kept in the “Sprite” directory; developers are then able to use different tools to design the image; the image rotation and zoom only require a simple invocation of directory functions.

2. There are drawbacks in animation realization as well. Although canvas provides the nontraditional method of using divs to realize the animation, it’s still pretty complicated. The developers have to clean the canvas at each frame, and redraw all elements.
As a consequence, animation with large numbers of elements display slowly. The movement of even a few elements requires redrawing the whole canvas, wasting huge resources. In comparison, Flash is drastically easier. Although redraw is required on the basic level, it’s processed by Flash Player automatically; the developers don’t have to do it themselves.
The Flash analysis progress based on bytecode is faster than the one used by HTML5 and JavaScript based on simultaneous compiling. Generally speaking, the more complicated the animation, the more fluid the display. In addition, the well kept image directory and powerful designing tool make animation development much easier.

3. There is no event system. Developers need to judge the image element clicked by users by catching the coordinates of the user clicking on the canvas. During the process, it might check all the displayed elements and judge whether the dot is inside the image or not. It’s complicated to realize, let alone the recursion.
The problem might be solved by future graphics libraries, but it’s just like building an event response model with JavaScript. Obviously, its efficiency is less than the original event model imbedded in browsers. Event is well kept in the Flash directories, the event of click capture is a piece of cake.
More importantly, it provides the event and function to judge whether there is intersection between two images, which is really convenient in game programming. HTML5 is not convenient here.

From the above analysis, we can see that HTML5 still lags behind in three areas. It needs a powerful and easy-to-use graphic library, hardware accelerator for image analysis/redraw and a powerful IDE.

At present, the game engine based on canvas already exists, but it’s not nearly as perfect as Flash.

As far as hardware acceleration is concerned, WebGL gives us hope. WebGL (Web-based Graphics Library) is a software library that extends the capability of the JavaScript programming language, allowing it to generate interactive 3D graphics within any compatible web browser. It promotes the speed of image display, and most encouragingly WebGL is available on most browsers, with the notable exception of IE.

As for IDE, it’s ironic that Adobe adds a Flash-to-canvas function for Adobe Flash CS5.

If the above 3 problems can’t be solved, the realization of canvas will be restricted, the development will be difficult, and it’s going to be hard to popularize.

Video:

Video might be the most frustrating thing for Adobe. More than anything it’s probably going to be swipe that knocks Flash’s crown off. The current situation is that there’s a coding problem for the video tag. “H. 264″ supported by Apple and Microsoft is not an open standard. Browsers have to pay for it, and that’s why Firefox refused to support H. 264. Although Google purchased a set of high-qualified coding technology, there’s no evidence that indicates Google will open the technology.

According to the statistics of W3schools.com: Google Chrome and Apple Safari have a strong growing trend, but the browser market is still dominated by Firefox and IE. If Firefox keeps H. 264 out of the door, it’s going to be very hard to popularize that video tag.

So HTML5 needs an open and high-qualified video coding standard.

In this article we’ve looked at HTML5 from a technical perspective. We discussed the problems HTML5 is facing. In part 2 we’ll change to a commercial perspective and discuss the relationship between HTML5 and the giants of the industry.

You might also like…

10 Essential Guides, Resources and Tools for Getting Started with HTML5 →
HTML5 and CSS3 Form References, Resources and Tutorials →
10 HTML5-Ready Blank, Bare-Bones and Naked Themes for WordPress →
Beginner’s Study Guide to HTML5 Microformats →
Guide to HTML5′s New Media Tags – Audio and Video →
Coding Flexible Web Layouts in HTML5 and CSS →


Advertise here with BSA