<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<!-- <link rel="stylesheet" type="text/css" href=""> -->
<style>
span {
border: 5px solid green;
}
img {
border: 5px solid red;
}
</style>
</head>
<body>
<div>
<span ><img alt="图片" src="file:///D:/HTML/Head%20First%20HTML%20and%20CSS/chapter%2011/starbuzz/images/headerLogo.gif"></span>
</div>
</body>
</html>
代码是这样的,然后效果是
其中绿色的是 span 元素的边框,红色的是图片的。我想问的问题是,为什么 span 元素没有完全包围 img 元素并且看起来占据了一个如此奇怪的空间呢?
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<!-- <link rel="stylesheet" type="text/css" href=""> -->
<style>
div {
border: 5px solid yellow;
}
img {
border: 5px solid red;
}
#T {
/* margin-left: auto; */
margin-right: 0xp;
}
</style>
</head>
<body>
<div>
<img alt="图片" src="file:///D:/HTML/Head%20First%20HTML%20and%20CSS/chapter%2011/starbuzz/images/headerLogo.gif">
<img id="T" alt="图片" src="file:///D:/HTML/Head%20First%20HTML%20and%20CSS/chapter%2011/starbuzz/images/headerLogo.gif">
</div>
</body>
</html>
现在在一个 div 中有两个图片左右排列,我想要让右边那个图片紧贴窗口右侧,如果压扁窗口也会自动移动。
尝试了将它的 margin-left 设为 auto (不是说 auto 是自动填满的意思吗),将右侧图片与左侧图片间的外边距自动填满,那图片不就自动到了窗口最右边了吗?另一个想法是 margin-right 设为 0px,那图片也应该会在自动贴在窗口左边吧?
但是这两个方法都失败了,请问两者为何不成功呢?( PS:我知道可以使用绝对定位或者浮动定位实现这个效果,我就是不明白为何我这两种想法是失败的呢?)
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.