Рассмотрим следующий код, чтобы сделать формы на CSS.

Браузеры, которые поддерживают: IE9, Chrome, Safari, Firefox, Opera.

 

Квадрат

Квадрат

#square {
	width: 100px;
	height: 100px;
	background: #000;
}

Прямоугольник

Прямоугольник

#rectangle {
	width: 200px;
	height: 100px;
	background: #000;
}

Круг

Круг

#circle {
	width: 100px;
	height: 100px;
	background: #000;
	-moz-border-radius: 50px;
	-webkit-border-radius: 50px;
	border-radius: 50px;
}

 Овал

Овал

#oval {
	width: 200px;
	height: 100px;
	background: #000;
	-moz-border-radius: 100px / 50px;
	-webkit-border-radius: 100px / 50px;
	border-radius: 100px / 50px;
}

Треугольник

Треугольник

#triangle-up {
	width: 0;
	height: 0;
	border-left: 50px solid transparent;
	border-right: 50px solid transparent;
	border-bottom: 100px solid#000;
}

Треугольник (вершина снизу)

Треугольник (вершина снизу)

#triangle-down {
	width: 0;
	height: 0;
	border-left: 50px solid transparent;
	border-right: 50px solid transparent;
	border-top: 100px solid#000;
}

Треугольник (вершина слева)

Треугольник (вершина слева)

#triangle-left {
	width: 0;
	height: 0;
	border-top: 50px solid transparent;
	border-right: 100px solid#000;
	border-bottom: 50px solid transparent;
}

Треугольник (вершина справа)

Треугольник (вершина справа)

#triangle-right {
	width: 0;
	height: 0;
	border-top: 50px solid transparent;
	border-left: 100px solid#000;
	border-bottom: 50px solid transparent;
}

Треугольник (вершина сверху слева)

Треугольник (вершина сверху слева)

#triangle-topleft {
	width: 0;
	height: 0;
	border-top: 100px solid#000;
	border-right: 100px solid transparent;
}

Треугольник (вершина сверху справа)

Треугольник (вершина сверху справа)

#triangle-topright {
	width: 0;
	height: 0;
	border-top: 100px solid#000;
	border-left: 100px solid transparent;
}

Треугольник (вершина снизу слева)

Треугольник (вершина снизу слева)

#triangle-bottomleft {
	width: 0;
	height: 0;
	border-bottom: 100px solid#000;
	border-right: 100px solid transparent;
}

Треугольник (вершина снизу справа)

Треугольник (вершина снизу справа)

#triangle-bottomright {
	width: 0;
	height: 0;
	border-bottom: 100px solid#000;
	border-left: 100px solid transparent;
}

Кривая стрелка

Кривая стрелка

#curvedarrow {
	position: relative;
	width: 0;
	height: 0;
	border-top: 9px solid transparent;
	border-right: 9px solid#000;
	-webkit-transform: rotate(10deg);
	-moz-transform: rotate(10deg);
	-ms-transform: rotate(10deg);
	-o-transform: rotate(10deg);
}
#curvedarrow:after {
	content: "";
	position: absolute;
	border: 0 solid transparent;
	border-top: 3px solid#000;
	border-radius: 20px 0 0 0;
	top: -12px;
	left: -9px;
	width: 12px;
	height: 12px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
}

Трапеция

Трапеция

#trapezoid {
	border-bottom: 100px solid#000;
	border-left: 50px solid transparent;
	border-right: 50px solid transparent;
	height: 0;
	width: 100px;
}

Параллелограмм

Параллелограмм

#parallelogram {
	width: 150px;
	height: 100px;
	-webkit-transform: skew(20deg);
	-moz-transform: skew(20deg);
	-o-transform: skew(20deg);
	background: #000;
}

Звезда (6 конечная)

Звезда (6)

#star-six {
	width: 0;
	height: 0;
	border-left: 50px solid transparent;
	border-right: 50px solid transparent;
	border-bottom: 100px solid#000;
	position: relative;
}
#star-six:after {
	width: 0;
	height: 0;
	border-left: 50px solid transparent;
	border-right: 50px solid transparent;
	border-top: 100px solid#000;
	position: absolute;
	content: "";
	top: 30px;
	left: -50px;
}

Звезда (5 конечная)

Звезда (5 конечная)

#star-five {
	margin: 50px 0;
	position: relative;
	display: block;
	color:#000;
	width: 0px;
	height: 0px;
	border-right:  100px solid transparent;
	border-bottom: 70px  solid#000;
	border-left:   100px solid transparent;
	-moz-transform:    rotate(35deg);
	-webkit-transform: rotate(35deg);
	-ms-transform:     rotate(35deg);
	-o-transform:      rotate(35deg);
}
#star-five:before {
	border-bottom: 80px solid#000;
	border-left: 30px solid transparent;
	border-right: 30px solid transparent;
	position: absolute;
	height: 0;
	width: 0;
	top: -45px;
	left: -65px;
	display: block;
	content: '';
	-webkit-transform: rotate(-35deg);
	-moz-transform:    rotate(-35deg);
	-ms-transform:     rotate(-35deg);
	-o-transform:      rotate(-35deg);
}
#star-five:after {
	position: absolute;
	display: block;
	color:#000;
	top: 3px;
	left: -105px;
	width: 0px;
	height: 0px;
	border-right: 100px solid transparent;
	border-bottom: 70px solid#000;
	border-left: 100px solid transparent;
	-webkit-transform: rotate(-70deg);
	-moz-transform:    rotate(-70deg);
	-ms-transform:     rotate(-70deg);
	-o-transform:      rotate(-70deg);
	content: '';
}

Пятиугольник

Пятиугольник

#pentagon {
	position: relative;
	width: 54px;
	border-width: 50px 18px 0;
	border-style: solid;
	border-color:#000 transparent;
}
#pentagon:before {
	content: "";
	position: absolute;
	height: 0;
	width: 0;
	top: -85px;
	left: -18px;
	border-width: 0 45px 35px;
	border-style: solid;
	border-color: transparent transparent#000;
}

Шестиугольник

Шестиугольник

#hexagon {
	width: 100px;
	height: 55px;
	background: #000;
	position: relative;
}
#hexagon:before {
	content: "";
	position: absolute;
	top: -25px;
	left: 0;
	width: 0;
	height: 0;
	border-left: 50px solid transparent;
	border-right: 50px solid transparent;
	border-bottom: 25px solid#000;
}
#hexagon:after {
	content: "";
	position: absolute;
	bottom: -25px;
	left: 0;
	width: 0;
	height: 0;
	border-left: 50px solid transparent;
	border-right: 50px solid transparent;
	border-top: 25px solid#000;
}

Восьмиугольник

Восьмиугольник

#octagon {
	width: 100px;
	height: 100px;
	background: #000;
	position: relative;
}
#octagon:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	border-bottom: 29px solid#000;
	border-left: 29px solid #fff;
	border-right: 29px solid #fff;
	width: 42px;
	height: 0;
}
#octagon:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	border-top: 29px solid#000;
	border-left: 29px solid #fff;
	border-right: 29px solid #fff;
	width: 42px;
	height: 0;
}

Сердце

Сердце

#heart {
	position: relative;
	width: 100px;
	height: 90px;
}
#heart:before,
#heart:after {
	position: absolute;
	content: "";
	left: 50px;
	top: 0;
	width: 50px;
	height: 80px;
	background: red;
	-moz-border-radius: 50px 50px 0 0;
	border-radius: 50px 50px 0 0;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
	-webkit-transform-origin: 0 100%;
	-moz-transform-origin: 0 100%;
	-ms-transform-origin: 0 100%;
	-o-transform-origin: 0 100%;
	transform-origin: 0 100%;
}
#heart:after {
	left: 0;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transform-origin: 100% 100%;
	-moz-transform-origin: 100% 100%;
	-ms-transform-origin: 100% 100%;
	-o-transform-origin: 100% 100%;
	transform-origin :100% 100%;
}

Бесконечность

Бесконечность

#infinity {
	position: relative;
	width: 212px;
	height: 100px;
}
#infinity:before,
#infinity:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 60px;
	height: 60px;
	border: 20px solid#000;
	-moz-border-radius: 50px 50px 0 50px;
	border-radius: 50px 50px 0 50px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
#infinity:after {
	left: auto;
	right: 0;
	-moz-border-radius: 50px 50px 50px 0;
	 border-radius: 50px 50px 50px 0;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}

Ромб

Ромб

#diamond {
	width: 0;
	height: 0;
	border: 50px solid transparent;
	border-bottom-color:#000;
	position: relative;
	top: -50px;
}
#diamond:after {
	content: '';
	position: absolute;
	left: -50px;
	top: 50px;
	width: 0;
	height: 0;
	border: 50px solid transparent;
	border-top-color:#000;
}

Ромб в виде щита

Ромб в виде щита

#diamond-shield {
	width: 0;
	height: 0;
	border: 50px solid transparent;
	border-bottom: 20px solid#000;
	position: relative;
	top: -50px;
}
#diamond-shield:after {
	content: '';
	position: absolute;
	left: -50px; top: 20px;
	width: 0;
	height: 0;
	border: 50px solid transparent;
	border-top: 70px solid#000;
}

Вытянутый ромб

Вытянутый ромб

#diamond-narrow {
	width: 0;
	height: 0;
	border: 50px solid transparent;
	border-bottom: 70px solid#000;
	position: relative;
	top: -50px;
}
#diamond-narrow:after {
	content: '';
	position: absolute;
	left: -50px; top: 70px;
	width: 0;
	height: 0;
	border: 50px solid transparent;
	border-top: 70px solid#000;
}

Обрезанный ромб

Обрезанный ромб

#cut-diamond {
	border-style: solid;
	border-color: transparent transparent#000 transparent;
	border-width: 0 25px 25px 25px;
	height: 0;
	width: 50px;
	position: relative;
	margin: 20px 0 50px 0;
}
#cut-diamond:after {
	content: "";
	position: absolute;
	top: 25px;
	left: -25px;
	width: 0;
	height: 0;
	border-style: solid;
	border-color:#000 transparent transparent transparent;
	border-width: 70px 50px 0 50px;
}

Яйцо

Яйцо

#egg {
	display:block;
	width: 126px;
	height: 180px;
	background-color:#000;
	-webkit-border-radius: 63px 63px 63px 63px / 108px 108px 72px 72px;
	border-radius:         50%  50%  50%  50%  / 60%   60%   40%  40%;
}

Pacman

Pacman

#pacman {
	width: 0px;
	height: 0px;
	border-right: 60px solid transparent;
	border-top: 60px solid #EBEE01;
	border-left: 60px solid #EBEE01;
	border-bottom: 60px solid #EBEE01;
	border-top-left-radius: 60px;
	border-top-right-radius: 60px;
	border-bottom-left-radius: 60px;
	border-bottom-right-radius: 60px;
}

Talk Bubble

Talk Bubble

#talkbubble {
	width: 120px;
	height: 80px;
	background: #000;
	position: relative;
	-moz-border-radius:    10px;
	-webkit-border-radius: 10px;
	border-radius:         10px;
}
#talkbubble:before {
	content:"";
	position: absolute;
	right: 100%;
	top: 26px;
	width: 0;
	height: 0;
	border-top: 13px solid transparent;
	border-right: 26px solid#000;
	border-bottom: 13px solid transparent;
}

12 угольник

12 угольник

#burst-12 {
	background: #000;
	width: 80px;
	height: 80px;
	position: relative;
	text-align: center;
}
#burst-12:before, #burst-12:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	height: 80px;
	width: 80px;
	background: #000;
}
#burst-12:before {
	-webkit-transform: rotate(30deg);
	-moz-transform: rotate(30deg);
	-ms-transform: rotate(30deg);
	-o-transform: rotate(30deg);
}
#burst-12:after {
	-webkit-transform: rotate(60deg);
	-moz-transform: rotate(60deg);
	-ms-transform: rotate(60deg);
	-o-transform: rotate(60deg);
}

8 угольник

8 угольник

#burst-8 {
	background: #000;
	width: 80px;
	height: 80px;
	position: relative;
	text-align: center;
	-webkit-transform: rotate(20deg);
	-moz-transform: rotate(20deg);
	-ms-transform: rotate(20deg);
	-o-transform: rotate(20eg);
}
#burst-8:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	height: 80px;
	width: 80px;
	background: #000;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	-o-transform: rotate(135deg);
}

* Yin yang *

*Yin yang *

#yin-yang {
	width: 96px;
	height: 48px;
	background: #fff;
	border-color:#000;
	border-style: solid;
	border-width: 2px 2px 50px 2px;
	border-radius: 100%;
	position: relative;
}
#yin-yang:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	background: #fff;
	border: 18px solid#000;
	border-radius: 100%;
	width: 12px;
	height: 12px;
}
#yin-yang:after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	background: #000;
	border: 18px solid #fff;
	border-radius:100%;
	width: 12px;
	height: 12px;
}

Бейдж

Бейдж

#badge-ribbon {
	position: relative;
	background: #000;
	height: 100px;
	width: 100px;
	-moz-border-radius:    50px;
	-webkit-border-radius: 50px;
	border-radius:         50px;
}
#badge-ribbon:before,
#badge-ribbon:after {
	content: '';
	position: absolute;
	border-bottom: 70px solid#000;
	border-left: 40px solid transparent;
	border-right: 40px solid transparent;
	top: 70px;
	left: -10px;
	-webkit-transform: rotate(-140deg);
	-moz-transform:    rotate(-140deg);
	-ms-transform:     rotate(-140deg);
	-o-transform:      rotate(-140deg);
}
#badge-ribbon:after {
	left: auto;
	right: -10px;
	-webkit-transform: rotate(140deg);
	-moz-transform:    rotate(140deg);
	-ms-transform:     rotate(140deg);
	-o-transform:      rotate(140deg);
}

Космический захватчик

Космический захватчик

#space-invader {
	box-shadow:
	0 0 0 1em#000,
	0 1em 0 1em#000,
	-2.5em 1.5em 0 .5em#000,
	2.5em 1.5em 0 .5em#000,
	-3em -3em 0 0#000,
	3em -3em 0 0#000,
	-2em -2em 0 0#000,
	2em -2em 0 0#000,
	-3em -1em 0 0#000,
	-2em -1em 0 0#000,
	2em -1em 0 0#000,
	3em -1em 0 0#000,
	-4em 0 0 0#000,
	-3em 0 0 0#000,
	3em 0 0 0#000,
	4em 0 0 0#000,
	-5em 1em 0 0#000,
	-4em 1em 0 0#000,
	4em 1em 0 0#000,
	5em 1em 0 0#000,
	-5em 2em 0 0#000,
	5em 2em 0 0#000,
	-5em 3em 0 0#000,
	-3em 3em 0 0#000,
	3em 3em 0 0#000,
	5em 3em 0 0#000,
	-2em 4em 0 0#000,
	-1em 4em 0 0#000,
	1em 4em 0 0#000,
	2em 4em 0 0#000;
	background: #000;
	width: 1em;
	height: 1em;
	overflow: hidden;
	margin: 50px 0 70px 65px;
}

Телевизор

Телевизор

#tv {
	position: relative;
	width: 200px;
	height: 150px;
	margin: 20px 0;
	background: #000;
	border-radius: 50% / 10%;
	color: white;
	text-align: center;
	text-indent: .1em;
}
#tv:before {
	content: '';
	position: absolute;
	top: 10%;
	bottom: 10%;
	right: -5%;
	left: -5%;
	background: inherit;
	border-radius: 5% / 50%;
}

 

пруф линк: http://coderwall.com/p/xrxaxa