【问题标题】:How to align two elements and keep them on the same line如何对齐两个元素并将它们保持在同一行
【发布时间】:2016-02-23 12:40:00
【问题描述】:

好的,我有一个横幅。

该横幅是 2 个 div 图像,它们应该在一个包装器中彼此相邻。 (所以总共 4 个 div)横幅 > 包装器 > img1,img2。

右图水平翻转。我已经用颜色填充了 div,而不是上传我的图片。

所以我需要图像始终彼此相邻。然后我需要他们的父包装始终居中于正文并与横幅 div 的底部对齐。

我不知道为什么我有这么多麻烦。我可以在 echother 旁边实现它们,并将它们与底部对齐。但是一旦我这样做了,我就无法将它们居中。

这是我的小提琴:https://jsfiddle.net/vwdud0bu/3/ 这是我的 HTML:

<div class="Banner-Container"> 
  <div class="dock-Wrapper">
    <div class="dock-IMG1">IMG1</div>
    <div class="dock-IMG2">IMG2</div>
  </div> 
</div>

这是我的 CSS:

body {
  margin: 0;
  padding: 0;
  }

.Banner-Container {
  width:100%;
  height:606px;
  background-image:url(images/mainBannerBG.jpg);
  background-color:black;
  z-index:-5;
  overflow:hidden;
  }


.dock-Wrapper { 
  height:aut0;
  width:1920px;
  background:#777;
  bottom:0;
  overflow:hidden;
  position:relative;
  } 

.dock-IMG1 {
  width:957px;
  height:119px;
  background-image:url(images/dock.png);
  display:inline-block;
  background-color:blue;
  }

.dock-IMG2 {
  width:957px;
  height:119px;
  background-image:url(images/dock.png);
  display:inline-block;
  background-color:red;
  -moz-transform: scaleX(-1);
  -o-transform: scaleX(-1);
  -webkit-transform: scaleX(-1);
  transform: scaleX(-1);
  filter: FlipH;
  -ms-filter: "FlipH";
  }

任何帮助将不胜感激!如果您有任何解决方案,请重新链接小提琴。

【问题讨论】:

  • 添加位置:相对于 .doc-IMG1 和 .doc-IMG2.. 并且您不必一次又一次地重复 ccs 规则,给 display:inline-block 一次就足够了..: )
  • 第二个显示属性只是一个错字。至于响应式解决方案。这就是让它居中的意义所在。 2张图片是同一张图片。一旦右侧翻转,它就会自我镜像并完成完整图像。在 1920 像素的全宽下应该没问题。但除此之外,我希望它居中并将边缘隐藏在页面之外。即:响应式。

标签: html css centering


【解决方案1】:

当我解释这个问题时,您需要将 2 张图片放在一起,放在一个居中的包装纸中,并位于横幅的底部。

经过编辑以包含伊舍伍德的建议

https://jsfiddle.net/Lmxbhd0L/2/

为了让它走到底部,我在这里使用了解决方案:How do I horizontally center an absolute positioned element inside a 100% width div?

包装器是position:absolute; left:50%;bottom:0px; 并且还设置margin-left: 等于宽度的一半的负数。

另外Banner-Container 必须是position:relative; 否则包装将不会包含在横幅中。

我缩小了你的图片只是因为它们不适合我的显示器。

【讨论】:

  • 感谢您的帮助!至于不适合您的显示器的图像,当我将图像重新调整为所需的宽度时。它不再居中。它以保持正常宽度的图像为中心,以便它确实显示并适合所有显示器。有什么解决办法吗?
  • 如答案中所述,margin left: 应该是包装器宽度的一半,而包装器本身就是图像宽度的总和。
【解决方案2】:

这是你想要的吗?

https://jsfiddle.net/zer00ne/1ya613hj/embedded/result/

https://jsfiddle.net/zer00ne/1ya613hj/

相关的 CSS

body,html {
    width: 100vw;
    height: 100vh;
}
.Banner-Container {
    margin: auto 0;
    display: table;
}
.dock-Wrapper {
    height:auto;
    display: table-row;
}
.dock-IMG1 {
    display:table-cell;

.dock-IMG2 {
    display:table-cell;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-07-11
    • 2015-10-23
    • 2014-12-20
    • 1970-01-01
    • 2011-10-18
    • 2021-11-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多