HTML / CSS向左对齐,但保持居中

斯拉维克

我有这样的代码:

   <style>
      table {
        width: 20%;
        border: 1px solid black;
      }
    
      .player_line {
        display: flex;
        align-items: center;
      }
    
      .player_left,
      .player_right {
        flex: 1;
        border: 1px solid red;
      }
    
      .player_avatar {
        border-radius: 50%;
        width: 40px;
        height: 40px;
        margin-right: 5px;
        margin-top: 5px;
        margin-bottom: 5px;
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center;
      }
    </style>
    
    <table>
      <tr>
        <td>
          <div class="player_line">
            <div class="player_left"></div>
            <div class="player_avatar" style="background-image: url(./assets/static/images/user.png)"></div>
            A long user name
            <div class="player_right"></div>
          </div>
        </td>
      </tr>
      <tr>
        <td>
          <div class="player_line">
            <div class="player_left"></div>
            <div class="player_avatar" style="background-image: url(./assets/static/images/user.png)"></div>
            Not long name
            <div class="player_right"></div>
          </div>
        </td>
      </tr>
      <tr>
        <td>
          <div class="player_line">
            <div class="player_left"></div>
            <div class="player_avatar" style="background-image: url(./assets/static/images/user.png)"></div>
            A super long name
            <div class="player_right"></div>
          </div>
        </td>
      </tr>
    </table>

看起来像:

坏的

我该怎么做,以使化身对齐,因此它们始终向左对齐,但是整个玩家信息(化身+名称)仍然位于td元素的中心?像这样:

好的

我认为,这里重要的是,玩家信息可以随心所欲地增长(如果有空间),因此玩家的化身和姓名总是看起来正确(例如,姓名始终在一行中,图片是不缩小比例)。

伊泰·加尔(Itay Gal)

不确定是否需要红线,但是我会尝试像这样的简单解决方案,设置一个可以根据内容增长并使其居中的容器。这是一个例子:

body{
  width:100%;
  padding: 0; 
  margin: 0;
}

.container{
  display: flex;
  justify-content: center;
  width:100%;
}

.content{
  display: flex;
  flex-direction: column;
  padding: 10px;
  position: relative;
}

.player img{
  width: 20px;
}
<div class="container">
  <div class="content">
    <div class="player">
      <img src="https://png.pngitem.com/pimgs/s/508-5087236_tab-profile-f-user-icon-white-fill-hd.png"> 
      Name 1</div>
    <div class="player">
      <img src="https://png.pngitem.com/pimgs/s/508-5087236_tab-profile-f-user-icon-white-fill-hd.png"> 
      Name 2 Longer</div>
    <div class="player">
      <img src="https://png.pngitem.com/pimgs/s/508-5087236_tab-profile-f-user-icon-white-fill-hd.png">
      Name 3 A very long name</div>
  </div>
</div>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

HTML / CSS向左对齐,但保持居中

来自分类Dev

对齐并居中<textarea>文本HTML / CSS?

来自分类Dev

HTML / CSS-居中对齐UL导航菜单

来自分类Dev

HTML / CSS用float将居中对象对齐

来自分类Dev

在页脚HTML和CSS中将水平对齐的图像居中

来自分类Dev

HTML / CSS-左对齐并居中同一行

来自分类Dev

如何使用HTML和CSS居中对齐社交媒体标签

来自分类Dev

HTML/CSS - 左对齐并居中在同一行

来自分类Dev

HTML / CSS:向左浮动

来自分类Dev

使多行块居中,同时保持文本向左对齐

来自分类Dev

html css 外层 div 文本居中对齐,内 div 文本左对齐

来自分类Dev

在 html 中对齐段落:居中或居中

来自分类Dev

以CSS / HTML居中DIV

来自分类Dev

Html/Css 动态居中

来自分类Dev

css / html-网格十六进制中的居中对齐文本不起作用

来自分类Dev

如何使用HTML5和CSS3垂直居中对齐并对齐其他所有内容?

来自分类Dev

Html + 纯 css 对齐

来自分类Dev

图像对齐 HTML CSS

来自分类Dev

HTML居中对齐媒体屏幕上的按钮

来自分类Dev

将<hr>以兼容HTML5的方式向左对齐

来自分类Dev

可以将嵌套的HTML列表项强制向左对齐吗?

来自分类Dev

HTML/JS 行尾标点错误地向左对齐

来自分类Dev

用CSS居中HTML按钮

来自分类Dev

在CSS / HTML中将DIV居中

来自分类Dev

HTML和CSS的居中问题

来自分类Dev

HTML CSS 图像不会居中

来自分类Dev

在居中菜单下向左对齐

来自分类Dev

文本居中并向左对齐图标

来自分类Dev

居中文字并图标向左对齐