html - 无论分辨率/比例如何,如何让图像始终位于完全相同的位置?

标签 html css

<分区>


想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post .

关闭 7 年前

我有一个像这样的 div:

<div id="information">
<a href="https://www.com.edu"><img src="https://com-bb-dev.com.edu/branding/themes/as_2012_orig/images/bbbanner.png" 
style="position: absolute;left: 296px;"></a>
</div>

当显示器分辨率为 1920x1200 时,它正好出现在我想要的位置。但是,如果您调整窗口大小或将分辨率更改为较低的值,则图像的位置会发生变化。确保图像与其下方的元素对齐的正确方法是什么?我已经尝试过百分比,但这似乎与静态 px 值没有任何不同。

例如

https://i.gyazo.com/cf47cd0ee4ff20b3a9df48b3cc56d44d.png

如果您需要查看页面结构的其余部分,url 是 https://com-bb-dev.com.edu .它通过 SSL 验证。

当前页面构建:

<div id="information">
<a href="https://www.com.edu"><img src="https://com-bb-dev.com.edu/branding/themes/as_2012_orig/images/bbbanner.png" style="
    position: absolute;
    /* left: 296px; */
    margin-left: 297px;
"></a>

</div>
<div id="loginPageContainer">

  <div id="loginPane">

    <div id="loginContainer">

      <div class="clearfix loginBody">
        <div id="newStu">Students: Your initial log on is your WebAdvisor Username and your password is your seven digit COM ID number. To keep your account secure, please <a href="https://password.com.edu/_layouts/PG/login.aspx?ReturnUrl=%2fdefault.aspx">use this site</a> to change your password at your earliest convenience.</div>
<div id="seeClasses">You will not see your course within your Course List in Blackboard until the official start date (review your class schedule).</div>

CSS:

#information {
    height: 60px;
    padding-top: 10px;
    padding-bottom: 10px;
}

#loginPageContainer {
    background: #eaeaea;
    display: table;
    text-align: center;
    width: 100%;
    padding-top: 30px;
    height: 569px;
    zoom: 1;
}

#loginPane {
    vertical-align: top;
    display: inline-block;
    background: white;
    margin-bottom: 3px;
    height: 541px;
    -webkit-box-shadow: 0px 3px 22px 5px rgba(0,0,0,0.75);
    -moz-box-shadow: 0px 3px 22px 5px rgba(0,0,0,0.75);
    box-shadow: 0px 3px 22px 5px rgba(0,0,0,0.75);
}

#loginContainer .loginBody {
    width: 585px;
}

最佳答案

我花了一分钟才明白你的意思,我已经写了一篇很长的训话来批评你,直到我意识到你真正在问什么。

1) 您无需使用绝对定位。您真正需要的是一个容器,或者一个充当容器的现有元素。

2) 这是 bootstrap 派上用场的地方。你可以只添加 <div class="container">围绕这两个元素,这将是完美的。

3) 对你来说,#information 里面没有容器元素还有你的标志 <a> .所以你可以用你的 <a> 模仿下一节中的容器。如果您不能更改任何 HTML,但快速浏览一下,您将需要媒体查询以使其在每种分辨率下都完美无缺。最简单的方法是在两个有问题的部分周围添加一个容器。

如果您无法更新 HTML,请编辑您的问题并包含该详细信息,也许我可以用另一种方式来看待它。

编辑:由于您可以更改代码并假设您希望背景颜色继续扩展视口(viewport)的宽度:

<div id="information">
  <div class="container">
    <a class="logo"></a>
  </div>
</div>
<div id="logingPageContainer">
  <div class="container">
    <div class="pane1"></div>
    <div class="pane2"></div>
  </div>
</div>

有了这个结构,你现在可以像这样做 CSS:

.pane1, .pane2 { 显示: block ; 向左飘浮; 宽度:50%;/* 根据需要更改此宽度,如果需要不同的宽度,则为每个 Pane 拆分此宽度 */ } 。容器 { 宽度:80%; margin : 0 auto ;

这将为您提供基本的方法。对于响应式,您可以使用媒体查询,因为 80% 可能不会在所有设备上看起来都很好,并且如果没有更多 CSS 调整每个 Pane 的子级,您的 Pane 宽度在所有设备上都不会很好看。现在看起来一切都是静态像素,这总是会导致百分比宽度出现问题。这只是一个概念,但可以根据需要进行调整,但这应该会让您朝着正确的方向前进。如果您需要更多帮助,请发表评论。

关于html - 无论分辨率/比例如何,如何让图像始终位于完全相同的位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33040231/

上一篇:javascript - 在没有 jQuery 的情况下从 javascript 中的函数返回粗体/彩色搜索字符串

下一篇:javascript - Jquery:单击()滚动特定的div并隐藏顶部div

相关文章:

javascript - jQuery Mobile 为一项功能提供更多按钮

css - 如何更改丰富的 InputNumberSlider 中的指标?

javascript - 如何在asp.net中每3秒拉伸(stretch)和更改背景图像

javascript - 如何向简单的 javascript 函数添加第二个变量?

javascript - 当另一个函数调用时,函数不会触发

html图像标签不显示XAMPP中文件中的图像

html - 仅将 CSS 混合模式应用于边框

jquery - 更改 li :visited 上的背景颜色

jquery - 是否有针对不同供应商前缀的任何实用工具或脚本技术

javascript - 如何使用 Material Framework 制作加载屏幕?