html - 无法在较小的屏幕上更改图像位置
问题描述
我有一个图像,当屏幕较小时,我想在屏幕右侧对齐,在较大的屏幕上对齐到左侧 - 我有下面的代码,但不知道为什么它不能按预期工作:
body, html {
height: 100%;
}
@media screen and (max-width: 855px) {
.left_logo {float: right;}
}
.left_logo {
float: right;
position: absolute;
top: 4%;
left: 3%;
}
<body>
<div class="left_logo">
<img src="https://lh3.googleusercontent.com/G5oF0mhpOcQzFTrU6TDUL0JoAjzRt38weiZKua7L61WVT1z3dPcE9gUu-W2EwtM9cZU=s180-rw">
</div>
</body>
示例:https ://jsfiddle.net/oak22424/djbmqyk0/2/#&togetherjs=JRRSOGIcor
我错过了一些明显的东西吗?
解决方案
你不能使用position:absolute
and float
- 它的一个或另一个。
当您想将图像定位在特定的top
值left
时,您可以删除浮动并只使用位置:绝对。要将其向右移动,您可以设置right
为您想要的任何值,并设置left
为auto
清除之前的 3% 值。
.left_logo {
left:auto; /* reset the value for left */
right:3%;
}
另请注意,您还需要在更通用的 CSS之后包含媒体查询,否则它将被后面的 CSS 覆盖。
基于您的小提琴的工作片段- 全屏查看以查看图像向左移动:
.left_logo {
position: absolute;
top: 4%;
left: 3%;
}
@media screen and (max-width: 855px) {
.left_logo {
left:auto; /* reset left value */
right:3%;
}
}
<div class="left_logo">
<img src="https://lh3.googleusercontent.com/G5oF0mhpOcQzFTrU6TDUL0JoAjzRt38weiZKua7L61WVT1z3dPcE9gUu-W2EwtM9cZU=s180-rw">
</div>
推荐阅读
- vue.js - 更改 v-model 在 vue.js 中创建的绑定
- c++ - 抛出未处理的异常:写访问冲突。错误
- laravel - 如何使用参数修复重定向有错误
- android - 我的 Android Studio 从 3.4 更新到 3.5 后一直崩溃
- sql - 选择表中第一次出现的列表项
- c# - 服务器端 C# Websocket,如何在监听取消令牌时运行循环?
- r - 有没有办法使用 Rscript.exe 调试从命令行运行的 R 脚本
- flutter - 自毁 OverlayEntry 颤动
- c# - 使用 LINQ 选择具有唯一 ID 的对象作为另一种对象类型
- angular - 如何保护您的 WebAPI 免受移动和网络机器人的攻击?