Background image call problem

UPDATE: Added a third example to show you how to output the path inside a PHP string, per the source code you provided in the comments.

There’s nothing wrong with having a full path in your CSS but you want to make sure the path is being dynamically generated by WordPress for the most consistent results.

In this case the get_template_directory_uri() and/or get_stylesheet_directory_uri() helpers will be handy. The one you use depends on whether you are building in a standard theme vs. a parent theme with support for child themes. You can read more about the differences here: https://codex.wordpress.org/Function_Reference/get_template_directory_uri

On with the code, based on the example which you claim to be working as expected:

// standard theme / parent theme asset example
background: transparent url(<?php echo get_template_directory_uri(); ?>/assets/images/mix1.png) repeat-x !important;

// child theme asset example
background: transparent url(<?php echo get_stylesheet_directory_uri(); ?>/assets/images/mix1.png) repeat-x !important;

In your specific case, try this:

// specific example from your source file (line 23)
.header-fixed {  background: transparent url(' . get_template_directory_uri() . '/assets/images/mix1.png) repeat-x !important;  }