WordPress — пытается определить две цветовые остановки для области градиентного фона, где пользователи могут выбрать оба цвета с помощью палитры цветов

PHP — пытается определить две цветовые остановки для градиентного фона, который будет применен к одному селектору CSS. Мне нужно, чтобы они были индивидуально выбраны пользователем (с помощью палитры цветов).

Я определял цвет фона с помощью PHP (с именем: $ color_gradient & возвращение: ‘# f7f7f7’; по умолчанию для пользователей, чтобы начать с), так что пользователь может выбрать базовый цвет градиента (через PHP), а затем у меня есть цветовые наложения градиента, установленные в CSS (так что цвет фона, выбранный пользователями, исчезает до черный или белый конечный цвет), чтобы получить эффект, наиболее близкий к тому, что я пытаюсь достичь, но он все еще ограничивает любой цвет, который я установил в CSS для наложения, и я не хочу, чтобы пользователи имели редактировать цветовые коды в файле CSS — я бы предпочел, чтобы PHP обрабатывал их так, чтобы пользователь мог определять оба цвета градиента, а не только один.

function theme_customizer_get_default_gradient_color() {
return '#f7f7f7';
}

$color_gradient = get_theme_mod( 'theme_gradient_color',
theme_customizer_get_default_gradient_color() );

$css .= ( theme_customizer_get_default_gradient_color() !== $color_gradient ) ?
sprintf( '
.nav-primary,
.site-footer {
background-color: %1$s;
}
', $color_gradient ) : '';

if ( theme_customizer_get_default_gradient_color() !== $color_gradient

Есть ли способ определить что-то вроде «слева» & «справа» в цветах HEX или RGB, например, цвет фона области, чтобы два цвета, определенные в PHP, рассматривались как каждая половина градиента, и чтобы пользователь мог выбирать каждый цвет отдельно, и они все равно смешивались?

Или есть ли способ заставить PHP обрабатывать оверлей (вместо того, чтобы обрабатывать его в CSS), который останется элементом альфа-цвета, а не будет заменен сплошным цветом, когда пользователь выберет новый цвет? (Я обеспокоен тем, что прозрачность переопределяется, когда пользователь меняет цвет, отличный от цвета по умолчанию.)

Я не ищу никого, кто мог бы зашифровать это для меня; Мне просто нужно подтолкнуть в каком-то направлении.

0

Решение

В CSS градиенты используют background-image. Попробуйте определить переменные в вашей функции для каждого цвета и направления; например:

background-image: linear-gradient( to right, $color1, $color2 );

Больше информации: https://developer.mozilla.org/en-US/docs/Web/CSS/linear-gradient

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]