Astra_Dynamic_CSS::return_meta_output( string $dynamic_css, string $dynamic_css_filtered = '' )
Return post meta CSS
Description
Parameters
- $dynamic_css
-
(string) (Required) Astra Dynamic CSS.
- $dynamic_css_filtered
-
(string) (Optional) Astra Dynamic CSS Filters.
Default value: ''
Return
(mixed) Return the CSS.
Source
File: inc/class-astra-dynamic-css.php
public static function return_meta_output( $dynamic_css, $dynamic_css_filtered = '' ) { /** * - Page Layout * * - Sidebar Positions CSS */ $secondary_width = astra_get_option( 'site-sidebar-width' ); $primary_width = absint( 100 - $secondary_width ); $meta_style = ''; // Header Separator. $header_separator = astra_get_option( 'header-main-sep' ); $header_separator_color = astra_get_option( 'header-main-sep-color' ); $meta_style = array( '.ast-header-break-point .main-header-bar' => array( 'border-bottom-width' => astra_get_css_value( $header_separator, 'px' ), 'border-bottom-color' => esc_attr( $header_separator_color ), ), ); $parse_css = astra_parse_css( $meta_style ); $meta_style = array( '.main-header-bar' => array( 'border-bottom-width' => astra_get_css_value( $header_separator, 'px' ), 'border-bottom-color' => esc_attr( $header_separator_color ), ), ); $parse_css .= astra_parse_css( $meta_style, astra_get_tablet_breakpoint( '', 1 ) ); if ( 'no-sidebar' !== astra_page_layout() ) : $meta_style = array( '#primary' => array( 'width' => astra_get_css_value( $primary_width, '%' ), ), '#secondary' => array( 'width' => astra_get_css_value( $secondary_width, '%' ), ), ); $parse_css .= astra_parse_css( $meta_style, astra_get_tablet_breakpoint( '', 1 ) ); endif; if ( false === self::astra_submenu_below_header_fix() ) : // If submenu below header fix is not to be loaded then add removed flex properties from class `ast-flex`. // Also restore the padding to class `main-header-bar`. $submenu_below_header = array( '.ast-flex' => array( '-webkit-align-content' => 'center', '-ms-flex-line-pack' => 'center', 'align-content' => 'center', '-webkit-box-align' => 'center', '-webkit-align-items' => 'center', '-moz-box-align' => 'center', '-ms-flex-align' => 'center', 'align-items' => 'center', ), '.main-header-bar' => array( 'padding' => '1em 0', ), '.ast-site-identity' => array( 'padding' => '0', ), // CSS to open submenu just below menu. '.header-main-layout-1 .ast-flex.main-header-container, .header-main-layout-3 .ast-flex.main-header-container' => array( '-webkit-align-content' => 'center', '-ms-flex-line-pack' => 'center', 'align-content' => 'center', '-webkit-box-align' => 'center', '-webkit-align-items' => 'center', '-moz-box-align' => 'center', '-ms-flex-align' => 'center', 'align-items' => 'center', ), ); $parse_css .= astra_parse_css( $submenu_below_header ); else : // `.menu-item` required display:flex, although weight of this css increases because of which custom CSS added from child themes to be not working. // Hence this is added to dynamic CSS which will be applied only if this filter `astra_submenu_below_header_fix` is enabled. // @see https://github.com/brainstormforce/astra/pull/828 $submenu_below_header = array( '.ast-safari-browser-less-than-11 .main-header-menu .menu-item, .ast-safari-browser-less-than-11 .main-header-bar .ast-masthead-custom-menu-items' => array( 'display' => 'block', ), '.main-header-menu .menu-item, #astra-footer-menu .menu-item, .main-header-bar .ast-masthead-custom-menu-items' => array( '-js-display' => 'flex', 'display' => '-webkit-box', 'display' => '-webkit-flex', 'display' => '-moz-box', 'display' => '-ms-flexbox', 'display' => 'flex', '-webkit-box-pack' => 'center', '-webkit-justify-content' => 'center', '-moz-box-pack' => 'center', '-ms-flex-pack' => 'center', 'justify-content' => 'center', '-webkit-box-orient' => 'vertical', '-webkit-box-direction' => 'normal', '-webkit-flex-direction' => 'column', '-moz-box-orient' => 'vertical', '-moz-box-direction' => 'normal', '-ms-flex-direction' => 'column', 'flex-direction' => 'column', ), '.main-header-menu > .menu-item > .menu-link, #astra-footer-menu > .menu-item > .menu-link,' => array( 'height' => '100%', '-webkit-box-align' => 'center', '-webkit-align-items' => 'center', '-moz-box-align' => 'center', '-ms-flex-align' => 'center', 'align-items' => 'center', '-js-display' => 'flex', 'display' => '-webkit-box', 'display' => '-webkit-flex', 'display' => '-moz-box', 'display' => '-ms-flexbox', 'display' => 'flex', ), ); if ( false === Astra_Builder_Helper::$is_header_footer_builder_active ) { $submenu_below_header['.ast-primary-menu-disabled .main-header-bar .ast-masthead-custom-menu-items'] = array( 'flex' => 'unset', ); } $parse_css .= astra_parse_css( $submenu_below_header ); endif; if ( false === self::astra_submenu_open_below_header_fix() ) { // If submenu below header fix is not to be loaded then add removed flex properties from class `ast-flex`. // Also restore the padding to class `main-header-bar`. $submenu_below_header = array( // CSS to open submenu just below menu. '.header-main-layout-1 .ast-flex.main-header-container, .header-main-layout-3 .ast-flex.main-header-container' => array( '-webkit-align-content' => 'center', '-ms-flex-line-pack' => 'center', 'align-content' => 'center', '-webkit-box-align' => 'center', '-webkit-align-items' => 'center', '-moz-box-align' => 'center', '-ms-flex-align' => 'center', 'align-items' => 'center', ), ); $parse_css .= astra_parse_css( $submenu_below_header ); } $submenu_toggle = ''; $is_site_rtl = is_rtl(); if ( false === Astra_Icons::is_svg_icons() ) { // Update styles depend on RTL sites. $transform_svg_style = 'translate(0,-50%) rotate(270deg)'; $transform_nested_svg_transform = 'translate(0, -2px) rotateZ(270deg)'; $default_left_rtl_right = 'left'; $default_right_rtl_left = 'right'; if ( $is_site_rtl ) { $transform_svg_style = 'translate(0,-50%) rotate(90deg)'; $transform_nested_svg_transform = 'translate(0, -2px) rotateZ(90deg)'; $default_left_rtl_right = 'right'; $default_right_rtl_left = 'left'; } $submenu_toggle = array( // HFB / Old Header Footer - CSS compatibility when SVGs are disabled. '.main-header-menu .sub-menu .menu-item.menu-item-has-children > .menu-link:after' => array( 'position' => 'absolute', $default_right_rtl_left => '1em', 'top' => '50%', 'transform' => $transform_svg_style, ), '.ast-header-break-point .main-header-bar .main-header-bar-navigation .page_item_has_children > .ast-menu-toggle::before, .ast-header-break-point .main-header-bar .main-header-bar-navigation .menu-item-has-children > .ast-menu-toggle::before, .ast-mobile-popup-drawer .main-header-bar-navigation .menu-item-has-children>.ast-menu-toggle::before, .ast-header-break-point .ast-mobile-header-wrap .main-header-bar-navigation .menu-item-has-children > .ast-menu-toggle::before' => array( 'font-weight' => 'bold', 'content' => '"\e900"', 'font-family' => 'Astra', 'text-decoration' => 'inherit', 'display' => 'inline-block', ), '.ast-header-break-point .main-navigation ul.sub-menu .menu-item .menu-link:before' => array( 'content' => '"\e900"', 'font-family' => 'Astra', 'font-size' => '.65em', 'text-decoration' => 'inherit', 'display' => 'inline-block', 'transform' => $transform_nested_svg_transform, 'margin-' . $default_right_rtl_left => '5px', ), '.widget_search .search-form:after' => array( 'font-family' => 'Astra', 'font-size' => '1.2em', 'font-weight' => 'normal', 'content' => '"\e8b6"', 'position' => 'absolute', 'top' => '50%', $default_right_rtl_left => '15px', 'transform' => 'translate(0, -50%)', ), '.astra-search-icon::before' => array( 'content' => '"\e8b6"', 'font-family' => 'Astra', 'font-style' => 'normal', 'font-weight' => 'normal', 'text-decoration' => 'inherit', 'text-align' => 'center', '-webkit-font-smoothing' => 'antialiased', '-moz-osx-font-smoothing' => 'grayscale', ), '.main-header-bar .main-header-bar-navigation .page_item_has_children > a:after, .main-header-bar .main-header-bar-navigation .menu-item-has-children > a:after, .site-header-focus-item .main-header-bar-navigation .menu-item-has-children > .menu-link:after' => array( 'content' => '"\e900"', 'display' => 'inline-block', 'font-family' => 'Astra', 'font-size' => '9px', 'font-size' => '.6rem', 'font-weight' => 'bold', 'text-rendering' => 'auto', '-webkit-font-smoothing' => 'antialiased', '-moz-osx-font-smoothing' => 'grayscale', 'margin-' . $default_left_rtl_right => '10px', 'line-height' => 'normal', ), '.ast-mobile-popup-drawer .main-header-bar-navigation .ast-submenu-expanded>.ast-menu-toggle::before' => array( 'transform' => 'rotateX(180deg)', ), '.ast-header-break-point .main-header-bar-navigation .menu-item-has-children > .menu-link:after' => array( 'display' => 'none', ), ); } else { if ( ! Astra_Builder_Helper::$is_header_footer_builder_active ) { // Update styles depend on RTL sites. $transform_svg_style = 'translate(0,-50%) rotate(270deg)'; $transform_nested_svg_transform = 'translate(0, -2px) rotateZ(270deg)'; $default_left_rtl_right = 'left'; $default_right_rtl_left = 'right'; if ( $is_site_rtl ) { $transform_svg_style = 'translate(0,-50%) rotate(900deg)'; $transform_nested_svg_transform = 'translate(0, -2px) rotateZ(90deg)'; $default_left_rtl_right = 'right'; $default_right_rtl_left = 'left'; } $submenu_toggle = array( // Old Header Footer - SVG Support. '.ast-desktop .main-header-menu .sub-menu .menu-item.menu-item-has-children>.menu-link .icon-arrow svg' => array( 'position' => 'absolute', $default_right_rtl_left => '.6em', 'top' => '50%', 'transform' => $transform_svg_style, ), '.ast-header-break-point .main-navigation ul .menu-item .menu-link .icon-arrow:first-of-type svg' => array( $default_left_rtl_right => '.1em', 'top' => '.1em', 'transform' => $transform_nested_svg_transform, ), ); } else { $transform_svg_style = 'translate(0, -2px) rotateZ(270deg)'; $default_left_rtl_right = 'left'; if ( $is_site_rtl ) { $transform_svg_style = 'translate(0, -2px) rotateZ(90deg)'; $default_left_rtl_right = 'right'; } $submenu_toggle = array( // New Header Footer - SVG Support. '.ast-header-break-point .main-navigation ul .menu-item .menu-link .icon-arrow:first-of-type svg' => array( 'top' => '.2em', 'margin-top' => '0px', 'margin-' . $default_left_rtl_right => '0px', 'width' => '.65em', 'transform' => $transform_svg_style, ), '.ast-mobile-popup-content .ast-submenu-expanded > .ast-menu-toggle' => array( 'transform' => 'rotateX(180deg)', ), ); } } $parse_css .= astra_parse_css( $submenu_toggle ); $dynamic_css .= $parse_css; return $dynamic_css; }
Expand full source code Collapse full source code View on Trac