[wp-trac] [WordPress Trac] #26609: Admin Bar pushed down at screens of 600px width and lower on the frontside
    WordPress Trac 
    noreply at wordpress.org
       
    Fri Jun  9 05:39:34 UTC 2017
    
    
  
#26609: Admin Bar pushed down at screens of 600px width and lower on the frontside
---------------------------------------+----------------------
 Reporter:  Funkatronic                |       Owner:
     Type:  defect (bug)               |      Status:  closed
 Priority:  normal                     |   Milestone:
Component:  Toolbar                    |     Version:  3.8
 Severity:  normal                     |  Resolution:  wontfix
 Keywords:  needs-patch needs-refresh  |     Focuses:
---------------------------------------+----------------------
Comment (by rogerlos):
 This can be fixed by using the `::before` pseudo element on the body tag,
 rather than setting a margin on html. If the body is relatively positioned
 or not becomes irrelevant at that point.
 Here's a JS snippet which does this, but it would be worth considering
 changing the WP stylesheet to reflect this. (You'd want to de-bounce the
 resize call if using the JS below, or maybe use a mutation observer on the
 admin bar instead, in production.)
 You could also potentially use your theme stylesheet to attempt to
 override the inline sheet added by WP, and use media queries to match the
 WP break points.
 {{{
 jQuery('document').ready( function ($) {
     // event listener, and run once when this script loads
     window.addEventListener( 'resize', fixadminbar );
     fixadminbar();
     function fixadminbar() {
         // get adminbar height, 'css' will be true if bar is present,
 false if not
         var ah = $( '#wpadminbar' ).outerHeight(),
             css = typeof( ah ) !== 'undefined',
             $head = $('head');
         // if 'css' is true, change value to CSS rules
         css = css
             ? 'html{margin-top:initial !important}'
                 + 'body::before{content:"";height:' + ah +
 'px;display:block}'
             : css;
         // if this has been written before, remove old version
         $head.find('#wpadfx').remove();
         // append new if bar is present
         if ( css )
             $head.append('<style id="wpadfx">' + css + '</style>');
     }
 });
 }}}
--
Ticket URL: <https://core.trac.wordpress.org/ticket/26609#comment:24>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform
    
    
More information about the wp-trac
mailing list