Create rounded corner box with lists and css

Rounded corner box histoty

When html coders think about table-less HTML coding, one thing that comes to their mind is DIVs to create rounded corner boxes. UI/UX developers have been depending on html DIV tag for most of the time to create html layouts design by their designers. Yes, Divs serve the purpose and easiest html tag to handle with CSS and Javascript and JQuery.

Div tag is not the only html tag we can use to create rounded corner boxes. Let me show you a different html tag and how we can use efficiently in day to day coding create rounded corner boxes. Tor the rounded corner box without using Divs, I'm gonna use lists(<UL>) tag. Many web developers scared of using lists, because of there abnormal behavior. Mostly in web development we use lists to build menus and display billeted information etc. But let me show you power of lists. Lets use Lists to create rounded corner boxes.

A Simple Rounded corner box Design

Cast your vote for How useful this Article for you?

Create rounded corner box using CSS/HTML

Rounded corner box slicing plan

Lets look at a simple rounded corner box example like shown above. First things first. You must plan how you are going to create rounded corner box. In this scenario you need to slice or cut-up above round corner box image into three slices in order to create the round corner box using css/html.

The top slice to build top two curved corners of the rounded corner box and second slice to build middle part and third slice to create bottom two curved corners. You might be wondering why we can't use the image itself as it is. No you can't it will reduce the performance of data transfer between server and the client and will reduce flexibility of your website with bigger images. Biggest reason why we don't use image as it self, when the content inside rounded corner box increase the box will not increase in size according to content. Smaller the size of image cut-ups gives higher the performance in data transfer.

Many web developers use various techniques to optimize html coding. You need to give full attention when you are slicing your designs, to optimize the sizes of slices or cut-ups to be minimum in size, then you will get the highest performance on the web. Why? each time visitors request your page with your rounded corner box you will save the bandwidth of the server by smaller images rather not sending big images to client.

Rounded corner box coding plan

How will you create rounded corner box using css/html? Still your mind says lets go for divs. But let me show you, how to use lists(ul) to code the same box using css/html.

<ul>
  <li class="top"></li>
  <li class="mid"></li> 
  <li class="bot"></li>
</ul> 

Required list structure to create rounded corner box shown in the above code snippet. Now lets get started with doing CSS for the html code. First define relevant style classes for three list items top, middle and for bottom. Now you need to remove default bullet points using css. For that you need to use a css property call "list item style type", by making it to none you get ride of bullet points. When you remove style type preceding default dot will disappear.

One more important thing you need to do with list is get ride of default margin and padding. How you can do this by setting margin:0; padding : 0 to UL tag.

In a list structure UL tag will act as a container for list item(<li>). So you need to assign the appropriate width you are targetting at rounded corner box to the ul tag. In this case it is 400px;. same can be applied to list items too

Now we can code the top part of the box. To do this we need to assign the top image slice to the background of the list item top. For this you can use the css background-image property and set the url parameter to set the background image to list item. Make sure to assign the correct css height to the list item, in this case it is 10px; Correct height and width is very important otherwise the box edges will not look smooth. If miss the height property you will not see the image when you browse it,

You can do the styling of middle list item like the way you did the top one. Only one difference will be there is no height instead there will be a background-repeat property to be set to "repeat-y". Not specifying a height in css you can leave the middle part of the list item to be fluid(can increase or reduce in size), then based on the content the box size will grow.

You can set the styles to the bottom list item like we did in top part. only difference will be the background image name.

Here you can find the full css code what we discussed above.

/* Ul main tag style class */
ul{list-style-type:none;float:left;width:400px;clear:both;margin:0;padding:0;}

/* Common list item styles */
ul li{float:left;width:400px;overflow:hidden;}    

/* Box top css style class*/
.top{height:10px;background-image:url(images/top.jpg);}

 /* Box Middle css style class*/
.mid{height:400px;background-image:url(images/mid.jpg);background-repeat:repeat-y}

/* Box bottom css style class */
.bot{height:10px;background-image:url(images/bot.jpg);}

You can test this code like this. Create a html page and copy the html code to page body and then create a style tag at the header section of the html page and copy the styles. Download the image above or use ms-paint or any graphic tool to create the cut-ups and put it into images folder. that is it you are good to go.

Happy coding

© 2011 wecode

More by this Author


Comments

No comments yet.

    Sign in or sign up and post using a HubPages Network account.

    0 of 8192 characters used
    Post Comment

    No HTML is allowed in comments, but URLs will be hyperlinked. Comments are not for promoting your articles or other sites.


    Click to Rate This Article
    working