Мне было интересно, можно ли применить один градиентный фон CSS3 к нескольким элементам. Другими словами, градиент распространяется на родительский элемент, но видим только внутри дочерних элементов.CSS-градиент над несколькими элементами
После поиска, я нашел эту тему: Applying gradient over multiple views
Это именно моя проблема, хотя мне это нужно, как CSS/HTML
код.
Чтобы визуализировать проблему, я сделал две картины:
Это базовая настройка. Два <div>
s, нуждающиеся в градиентном фоне, находятся внутри более крупного элемента <div>
.
Как вы можете видеть, градиент на втором изображении perfecly замирает от элемента А к элементу В. Этот эффект легко выполним в большинстве программ редактирования изображений, так что я мог бы просто использовать соответствующее изображение чтобы получить желаемый эффект.
Однако, поскольку изображения, вероятно, не лучший способ решить эту проблему, я надеюсь найти здесь ответ, как это сделать только с CSS
. Раньше я использовал градиенты, но я еще не нашел решение этой проблемы самостоятельно.
Любая помощь приветствуется.
EDIT (06/01/15 13:30 GMT + 1): Элементы A и B должны иметь круглые углы. Первоначальный градиент должен был быть radial-gradient
, но это не обязательно. Возможно, проблема действительно не разрешима.
Как сложны ребенок формы вы рассматриваете? В приведенном выше примере вы, вероятно, могли бы подделать его, сделав оба дочерних фигуры одним и добавив средний бар. – xdhmoore
Еще одна идея: было бы немного странно, но вы могли бы рассчитать необходимые градиенты с помощью js и применить их вручную, основываясь на позиционировании каждого дочернего элемента. Особенно, если вы думаете о вертикальном или горизонтальном градиенте. – xdhmoore
Как насчет установки градиента в качестве фона и использования маски обрезания CSS для создания прямоугольников? – tsg