/ / Как да зададете ширината на фоновия цвят на div? - html, css

Как да зададете ширината на цвета на фона на div? - html, css

имам две <div>s със същия цвят на фона. Как да настроите ширината на фона?

Очакван резултат:

въведете описанието на изображението тук

Ето HTML:

<div>
<span>100% width of background</span>
</div>
<div>
<span>75% width of background</span>
</div>

Какво се опитах да направя с помощта на CSS:

div {
background-color: #fc0;
margin: 2px;
}
div:last-child {
background-size: 75%;
}

jsFiddle, разбира се.

Възможно ли е да направите това, освен настройка width от a div?

Отговори:

5 за отговор № 1

Можете да използвате наклони на фона с твърди спирания.

http://jsfiddle.net/isherwood/ZWrmn

div:last-child {
background: linear-gradient(left, green 0, green 75%, transparent 75%);
}

1 за отговор № 2

Не можете да го направите с прост background-color, но можете да го направите с CSS градиент.

background-color винаги се третира като единичен обикновен цвят зацелия елемент, но градиентите се третират като изображения и могат да бъдат оразмерени. Можете също така да правите други неща с градиенти, като наслояване на множество градиенти, което не може да се направи с прост background-color.


1 за отговор № 3

Бих използвал 1px изображение като фон нещо подобно background: url(1px.png) repeat-y; тогава можете да зададете background-size:75%; както това е изображение сега. Улесняване на живота и по-малко / прост код.


0 за отговор № 4

можете да използвате градиент:

background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzFlNTc5OSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjY5JSIgc3RvcC1jb2xvcj0iIzFlNTc5OSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjcwJSIgc3RvcC1jb2xvcj0iIzFlNTc5OSIgc3RvcC1vcGFjaXR5PSIwIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMxZTU3OTkiIHN0b3Atb3BhY2l0eT0iMCIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background: -moz-linear-gradient(left,  rgba(30,87,153,1) 0%, rgba(30,87,153,1) 69%, rgba(30,87,153,0) 70%, rgba(30,87,153,0) 100%);
background: -webkit-gradient(linear, left top, right top, color-stop(0%,rgba(30,87,153,1)), color-stop(69%,rgba(30,87,153,1)), color-stop(70%,rgba(30,87,153,0)), color-stop(100%,rgba(30,87,153,0)));
background: -webkit-linear-gradient(left,  rgba(30,87,153,1) 0%,rgba(30,87,153,1) 69%,rgba(30,87,153,0) 70%,rgba(30,87,153,0) 100%);
background: -o-linear-gradient(left,  rgba(30,87,153,1) 0%,rgba(30,87,153,1) 69%,rgba(30,87,153,0) 70%,rgba(30,87,153,0) 100%);
background: -ms-linear-gradient(left,  rgba(30,87,153,1) 0%,rgba(30,87,153,1) 69%,rgba(30,87,153,0) 70%,rgba(30,87,153,0) 100%);
background: linear-gradient(to right,  rgba(30,87,153,1) 0%,rgba(30,87,153,1) 69%,rgba(30,87,153,0) 70%,rgba(30,87,153,0) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#1e5799", endColorstr="#001e5799",GradientType=1 );

CSS генератор на градиента

jsfiddle


0 за отговор № 5

U трябва да промените css на:

div {
background-color: #fc0;
margin: 2px;
}
div:last-child {

background-image: -webkit-linear-gradient(left, #fc0, #fc0 75%, transparent 75%,     transparent 100%)
}