代码之家  ›  专栏  ›  技术社区  ›  Georgi Michev

如何相邻放置两个元素

  •  1
  • Georgi Michev  · 技术社区  · 7 年前

    我正在用呈现HTML页 Thymeleaf . 我的用户名显示在右上角的屏幕上。我想添加一个链接,如果用户没有验证他的电子邮件,我将显示该链接。我正试图使链接出现在括号中用户名的后面。这是HTML的一部分

    <div th:if="${isLogged}" class="div-block-10">
        <div class="user_name" th:text="${user.getFirstName() + ' ' + user.getLastName()}">Your Name</div>
        <div th:if="${!user.isEmailValidated()}" class="div-block-13">
            <div class="email_confirmed">
                <a th:href="@{'/email/send/' + ${user.getToken()}}">Your email is not confirmed!</a>
            </div>
        </div>
    

    用户名的CSS

    .div-block-10 {
        position: absolute;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        margin: 98px 27px 0px auto;
        text-align: left;
    }
    

    在完成了CSS教程之后,我掌握了一些基本知识,似乎我不了解显示属性。我想用这种方式为用户保留CSS,链接的CSS是

    .div-block-13{
        position: absolute;
        margin: 98px auto 0px auto;
        text-align: right;
    }
    

    我的逻辑是我希望它在同一高度的页面上,所以我保持了98px和0px 同时在右边对齐,这样,如果用户名在左边移动的时间更长,并且链接在右边保持不变。还尝试了所有位置属性,但我的链接显示不正确-离开屏幕或不在同一高度

    1 回复  |  直到 7 年前
        1
  •  2
  •   Piyush Verma    7 年前

    .div-block-10 {
      display: flex;
      align-items:center;
      height:100%;
      margin: 98px 0 0;
      text-align: left;
      justify-content:center;
    }
    <div th:if="${isLogged}" class="div-block-10">
                <div class="user_name" th:text="${user.getFirstName() + ' ' + user.getLastName()}">Your Name</div>
                <div th:if="${!user.isEmailValidated()}" class="div-block-13">
                    <div class="email_confirmed">
                        <a th:href="@{'/email/send/' + ${user.getToken()}}">Your email is not confirmed!</a>
                    </div>
                </div>

    这就是你要找的吗

    我刚刚使用了flex属性,justify content:center;property将使子div水平居中并对齐content:center将使您的div在父div的垂直中心对齐,并且彼此相邻。如果你想在两个沙发床之间留些空隙,只需在沙发床上加上衬垫或边缘即可。如果你需要帮助,请告诉我。