Css рамки

Рамки для блоков

by akogch

HTML

<p class="one text">Рамка вокруг текста</p>
  <p class="two text">Рамка вокруг текста</p>
  <p class="three text">Рамка вокруг текста</p>
  <p class="four text">Рамка вокруг текста</p>
  <p class="five text">Рамка вокруг текста</p>

CSS

body {
	margin: 30px;
}
//ширину для "р" поставил сам, но у всех ширина вышла разная. Глянь потом почему так.
p {
  width: 200px;
}
.text {
	background: #f05258;
	padding: 5px;
	color: white;
}

/* 1. Вариант с SHADOW  */
p.one {
  	box-shadow: 0 0 0 1px white,
				        0 0 0 2px #f05258;
}

/* 2. Вариант с OUTLINE; в Internet Explorer не работает */
p.two {
	outline: 1px solid #f05258;
	outline-offset: 1px;
} 

/* 3. Вариант с DOUBLE */  
p.three {
	border: 3px double white;
}  

/* 4. Вариант с ПСВОЭЛЕМЕНТОМ */
p.four {
	position: relative;
}
p.four::before {
	content: '';
	display: block;
	border: 1px solid white;
	height: calc(100% - 4px);
	width: calc(100% - 4px);
	margin: -4px;
	position: absolute;
} 

/* 5. Вариант с BACKGROUND-CLIP */
p.five {
  padding: 1px;
	border: 1px solid #f05258;
	background-clip: content-box;
	display: block;
	min-height: 27px;
	width: 100%;
	font: 16px/1.8 Arial;
}
p.five::before {
	content: '.';
	color: #f05258;
}