为什么我的浏览器向后回显此文本


Why is my browser echoing this text backwards?

我用PHP写了这个:

<?php global $current_user;
      get_currentuserinfo();
?>
<div style="float: right; text-align: right;">
<h4>
    <?php
        if ( is_user_logged_in() ) {
     echo 'Welcome: ' . $current_user->user_login; 
    ?>
</h4>
<p>
    <?php
        echo '<a>My Classes</a> &nbsp;&brvbar;&nbsp; <a>Logout</a>';
    } else {
    ?>
</p>
<h4>    
    <?php
      echo 'Welcome, guest!';
   ?>
</h4>
<p>
    <?php
        echo '<a>Login</a> | <a>Register</a>';
    }
    ?>
</p>
</div>

我的浏览器显示:

Welcome: Admin
| LogoutMy Classes

为什么?

从外观上看,您的<a>标记浮动在右侧。在这种情况下,右浮动元素将始终从右向左堆叠。

这意味着,向右浮动的第一个元素将位于最右侧边缘,第二个元素将浮动在右侧,但位于第一个元素的左侧。要解决这个问题,您必须(a)调整CSS,使<a>标记不会浮在右边,或者(b)重新排列echo语句的顺序,使其在输出"My Classes"之前输出"Logout"。