Html 块级元素中声明的固定或绝对位置

Html 块级元素中声明的固定或绝对位置,html,css,Html,Css,朋友们,我想知道,如果我将任何div定义为固定/绝对位置(未提及其宽度为100%或其他宽度值),那么为什么它会丢失其默认值?正如我所知,它是一个块级元素,占据了视口的全宽,所以当我将其作为一个固定或绝对位置时,为什么它看起来像内联块,为什么它不是视口的全宽 div{背景:红色;填充:20px 0;/*宽度:100%*/} div.demo{位置:固定;顶部:0;左侧:0;背景:橄榄色; /*宽度:100%;*/} 乱数假文 乱数假文 乱数假文 乱数假文 乱数假文 具有位置的元素:固定相对于视

朋友们,我想知道,如果我将任何div定义为固定/绝对位置(未提及其宽度为100%或其他宽度值),那么为什么它会丢失其默认值?正如我所知,它是一个块级元素,占据了视口的全宽,所以当我将其作为一个固定或绝对位置时,为什么它看起来像内联块,为什么它不是视口的全宽


div{背景:红色;填充:20px 0;/*宽度:100%*/}
div.demo{位置:固定;顶部:0;左侧:0;背景:橄榄色;
/*宽度:100%;*/}
乱数假文
乱数假文
乱数假文
乱数假文
乱数假文

具有位置的元素:固定相对于视口定位,这意味着即使滚动页面,它也始终保持在同一位置

如果未设置其宽度
,则其内容的宽度将显示为默认宽度

如果以百分比设置其宽度,则宽度将以与视口相对应的百分比显示

因此,如果您想要查看div的完整宽度,请将其宽度设置为:100%;我在下面添加了一个片段


div{背景:红色;填充:20px 0;/*宽度:100%*/}
div.demo{位置:固定;顶部:0;左侧:0;背景:橄榄色;
宽度:100%;}
乱数假文
乱数假文
乱数假文
乱数假文
乱数假文
来自:

绝对定位的元素将收缩包装以适合其内容 除非指定它们的尺寸


除此之外,您还应该为父(周围)div声明position:relative。这是当它处于固定或绝对位置时,默认情况下仅获取其内容宽度的点。.很好的回答sirI在规范中找不到关于为什么会出现这种情况的明确解释,所以可能只是因为“w3c的人就是这么决定的。”