Solved

Liquid CSS rounded corners CSS

Posted on 2010-09-23
8
676 Views
Last Modified: 2013-12-25
Hello.
I need to modify a css in order to get a liquid rounded corner (top only) effect using a longer (compared with the box dimension) png image with both sides rounded.
Unfortunatelly I have poor to no possibility to modify the HTML, so I need to do everything by css.
This is the css code I am actually using
 
.block 
{
    margin-bottom: 15px;
	padding-bottom: 5px;
	padding-left: 0;
	color: #FFFFFF;
	background: transparent url(images/BlockHeader.png) no-repeat bottom right;
}

.block .title
{
	font-size: 0.9em;
	font-weight: bold;
	text-transform: uppercase;
	padding: 7px 10px;
	color: #ff9933;
	background: transparent url(images/BlockHeader.png) no-repeat bottom right;
	
}

.block .listbox
{
	font-size: 11px;
	padding: 5px 10px 10px;
	line-height: 18px;
	
	background-color:#404040 ;
	margin: 0px;
}

.block .listbox ul
{
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 10px;
	color: #3664A5;
	background-color: inherit;
}

.block a
{
	color: #FFF;
	font-weight: bold;
	text-decoration: none;
}

.block li
{
    list-style: none;
}

.block li.separator
{
	height: 1px;
	line-height: 1px;
	background: #ff9933;
	width: 140px;
	font-size: 1px;
	margin: 5px 0 5px 0;
}



.block-category-navigation, .block-manufacturer-navigation, .block-recently-viewed-products, 
.block-info, .block-shoppingcart, .block-newsletter, .block-livechat, .block-popular-tags,
.block-popular-blogtags, .block-blog-archive
{
	
}

Open in new window

This is a box example:
 
<div class="block block-info">
    <div class="title">
    </div>
    <div class="clear">
    </div>
    <div class="listbox">

    </div>
</div>

Open in new window

As you can notice I would like to use the subclass (present in each box to sort out this problem.
Please help.
Thanks!
0
Comment
Question by:giuseppepi
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
8 Comments
 
LVL 7

Accepted Solution

by:
Gene_Cyp earned 500 total points
ID: 33743428
Most of the "rounding" tricks are actually done with a combination of CSS and the use of images.

A "curve" is essentially part of a circle.

Thus create an image of a circle (in whichever way you want it to look) and then use CSS to show only a section of that circle

Having said that, here are some tutorials that can help you:


http://www.search-this.com/2007/02/12/css-liquid-round-corners/

http://home.tiscali.nl/developerscorner/liquidcorners/liquidcorners.htm
0
 
LVL 3

Author Comment

by:giuseppepi
ID: 33743691
Hello Gene,
thanks for your answer.
I took a look to the sample but both are using multiple images. I have the necessity to show only the left side and only the right side of the same image.
Thanks for supporting
0
 
LVL 7

Expert Comment

by:Gene_Cyp
ID: 33743720
Create a circle in photoshop or paint or Paint.Net (free downloadable paint with advanced settings)

Then using css show the top left "section" of that circle for the top elft corner and the top right section of that circle for the top right corner.
0
Don't Cry: How Liquid Web is Ensuring Security

WannaCry is just the start. Read how Liquid Web is protecting itself and its customers against new threats.

 
LVL 7

Expert Comment

by:Gene_Cyp
ID: 33743728
You can even "cut" that part u want to show within photoshop / paint itself and save it as an image.
0
 
LVL 3

Expert Comment

by:jchook
ID: 33749990
If you are able to use javascript I can recommend CurvyCorners: http://www.curvycorners.net/
0
 
LVL 9

Expert Comment

by:Bob Stone
ID: 33753297
Here are two alternate solutions

Pure CSS Rounded Box -
http://wizard-enterprises.com/CSSround.html

Single image auto resize -
http://www.schillmania.com/projects/dialog2/
0
 
LVL 4

Expert Comment

by:bastianr
ID: 33754216
I've used the sliding doors approach with a single, very wide (1600px) image which I think is similar to your goal here. You need to align the background image to opposite sides on the two elements and then set a right or left margin on one of the elements so that the rounded corner shows through from behind. Try something like this:
.block .title {
background: transparent url(images/BlockHeader.png) no-repeat bottom left;
margin: 0 6px 0 0;  /* adjust px value to show corner */
}
 
0
 
LVL 4

Expert Comment

by:acashok
ID: 33755897
0

Featured Post

The Orion Papers

Are you interested in becoming an AWS Certified Solutions Architect?

Discover a new interactive way of training for the exam.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Although a lot of people devote their energy toward marketing for specific industries, there are some basic principles that can be applied to any sector imaginable. We’ll look at four steps to take and examine how those steps were put into action fo…
Australian government abolished Visa 457 earlier this April and this article describes how this decision might affect Australian IT scene and IT experts.
The viewer will learn how to create and use a small PHP class to apply a watermark to an image. This video shows the viewer the setup for the PHP watermark as well as important coding language. Continue to Part 2 to learn the core code used in creat…
The viewer will learn the benefit of using external CSS files and the relationship between class and ID selectors. Create your external css file by saving it as style.css then set up your style tags: (CODE) Reference the nav tag and set your prop…

623 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question