Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 使用css时块级元素的文档流:在伪选择器之后 为什么块级元素框“(红色)”出现在“(蓝色)”容器内容之后,而不是内容框本身之后 如何使用css:after选择器实现这一点_Html_Css - Fatal编程技术网

Html 使用css时块级元素的文档流:在伪选择器之后 为什么块级元素框“(红色)”出现在“(蓝色)”容器内容之后,而不是内容框本身之后 如何使用css:after选择器实现这一点

Html 使用css时块级元素的文档流:在伪选择器之后 为什么块级元素框“(红色)”出现在“(蓝色)”容器内容之后,而不是内容框本身之后 如何使用css:after选择器实现这一点,html,css,Html,Css,CSS div{ background:#59c; box-sizing: border-box; height: 100px; width: 100%; position: relative; } div:after{ background:#b55; content: "I SHOULD BE AFTER CONTENT BOX"; width: 100%; display:block; } 可以对伪元素使用绝对定位:

CSS

div{
    background:#59c;
    box-sizing: border-box;
    height: 100px;
    width: 100%;
    position: relative;
}
div:after{
    background:#b55;
    content: "I SHOULD BE AFTER CONTENT BOX";
    width: 100%;
    display:block;
}

可以对伪元素使用绝对定位:

div:after{
    position:absolute; /* <-- add this */
    top:100%; /* <-- and this */
    background:#b55;
    content: "I SHOULD BE AFTER CONTENT BOX";
    width: 100%;
    display:block;
}
div:after{

位置:绝对;/*您可以对伪元素使用绝对定位:

div:after{
    position:absolute; /* <-- add this */
    top:100%; /* <-- and this */
    background:#b55;
    content: "I SHOULD BE AFTER CONTENT BOX";
    width: 100%;
    display:block;
}
div:after{

位置:绝对;/*这将按照您的预期工作:

div {
    background:#59c;
    box-sizing: border-box;
    height: 100px;
    width: 100%;
    position: relative;
}
div:after {
    position: absolute;
    top: 100%;
    left: 0;
    background: #b55;
    content: "I SHOULD BE AFTER CONTENT BOX";
    width: 100%;
    display: block;
}

这将按照您的预期工作:

div {
    background:#59c;
    box-sizing: border-box;
    height: 100px;
    width: 100%;
    position: relative;
}
div:after {
    position: absolute;
    top: 100%;
    left: 0;
    background: #b55;
    content: "I SHOULD BE AFTER CONTENT BOX";
    width: 100%;
    display: block;
}

很好,直到现在我才意识到top 100%将与基线内联。但是为什么元素在默认情况下不在内容框后对齐?在应用它的元素上的内容之后插入::after伪元素,而不是元素本身。很好,我直到现在才意识到top 100%将与基线内联。但是为什么元素不是基线默认情况下在内容框后对齐?在应用它的元素上的内容之后插入::after伪元素,而不是元素本身。在:after伪元素作为选择器元素的最后一个子元素追加。您可以在浏览器开发工具中看到它。在:after伪元素作为选择器元素的最后一个子元素追加..yo你可以在浏览器开发工具中看到它。