html - 当定位为静态/相对时,HTML 和 body 标签如何或为什么占用视口的宽度和高度?
问题描述
当我为HTML
和body
标签设置边框时,观察到边框是浏览器的整个视口。情况也是如此positioned, relative
。
但是,当我制作它时positioned as absolute
,只有当我将高度和宽度明确设置为 HTML 和正文标签时才会应用边框。否则,它会显示为一个小点,因为没有指定尺寸。
当我们将其设置为绝对定位时,无法理解为什么会出现这种差异。
代码:
* {margin:0; padding:0;}
html {border: 1px solid green;}
body {position: absolute; border: 1px solid yellow; width: 500px; height: 500px;}
<html>
<head>
</head>
<body>
</body>
</html>
解决方案
这个问题非常类似于:
differ-between-style-positionabsolute-and-style-positionrelative
参考那个问题,看看这是否不能回答你的问题。
或者,您可以访问:
W3SCool - CSS 定位
和CSS-tricks - absolute-relative-fixed-positioining-how-do-they-differ/
这两个链接对相对定位和绝对定位之间的区别都有很好的解释。
简而言之:
绝对
位置绝对设置和使用顶部、左右和底部锚点的元素的绝对位置。锚点是相对于下一个绝对定位标签的,如果没有,它指的是 HTML 标签。
相对 这里的元素是相对于它自己的位置的,这意味着如果你给它一个 50px 的权利,它会移动 50px 到它自己的静态位置的右边。
推荐阅读
- java - 如何将 3rd 方 JAR 添加到 Maven 项目
- python - 如何从熊猫数据框中只选择几列
- assembly - 在汇编Linux中将浮点值打印到STDOUT
- python - LinearNDInterpolatorExtrapolate 用简单的例子返回错误
- java - 获取异常 java.lang.IllegalStateException: EntityManagerFactory is closed while trying to save secound istance
- c - 如何使用 libpcre2 在纯文本文件中搜索子字符串?
- php - 从 Kartik ExportMenu 小部件导出到 Excel 时,只有在双击它时才会显示换行符
- javascript - 每次登录时如何将url与变量连接起来
- java - 无法使用 Selenium Webdriver 在 Twitter 上的撰写新推文框中输入文本
- django - django 模型 - 避免数据库设计中可能的循环引用