Html 为什么上边框和左边框不被视为单线?

Html 为什么上边框和左边框不被视为单线?,html,css,Html,Css,div{ 边框:1px纯红; } .一{ 高度:20px; 宽度:20px; } .二{ 高度:30px; 宽度:30px; } 我在这里看到两个问题: 为什么上边框和左边框没有一条线 因为css就是这样构建的,如果你想要一行,你只需要为你的内部div使用border right和border bottom(或者将border top和border left设置为0) 为什么小盒子在屏幕中央 编辑关于您的编辑:因为.one包含.two,但是css中没有边界融合。所以你的大div在你的小div里面

div{
边框:1px纯红;
}
.一{
高度:20px;
宽度:20px;
}
.二{
高度:30px;
宽度:30px;
}

我在这里看到两个问题:

为什么上边框和左边框没有一条线

因为css就是这样构建的,如果你想要一行,你只需要为你的内部div使用border right和border bottom(或者将border top和border left设置为0)

为什么小盒子在屏幕中央

编辑关于您的编辑:因为
.one
包含
.two
,但是css中没有边界融合。所以你的大div在你的小div里面,但是它是溢出的


如果您不明白,可以尝试使用不同的颜色来区分您的div

我在这里看到两个问题:

use this :

<div id="d1">
     <div id="d2">
 </div>
</div>




#d1{
    height:100px;
    width:100px;
    border-color:black;
    border-width:1px;
    border-style:solid;
}

#d2{
   height:50px;
   width:50px;
   border-color:red;
   border-width:1px;
   border-style:solid;
   position:relative;
    top:-1px;
   left:-1px;
}
为什么上边框和左边框没有一条线

因为css就是这样构建的,如果你想要一行,你只需要为你的内部div使用border right和border bottom(或者将border top和border left设置为0)

为什么小盒子在屏幕中央

编辑关于您的编辑:因为
.one
包含
.two
,但是css中没有边界融合。所以你的大div在你的小div里面,但是它是溢出的

如果您不明白,可以尝试使用不同的颜色来区分您的div

使用以下方法:
use this :

<div id="d1">
     <div id="d2">
 </div>
</div>




#d1{
    height:100px;
    width:100px;
    border-color:black;
    border-width:1px;
    border-style:solid;
}

#d2{
   height:50px;
   width:50px;
   border-color:red;
   border-width:1px;
   border-style:solid;
   position:relative;
    top:-1px;
   left:-1px;
}
#d1{ 高度:100px; 宽度:100px; 边框颜色:黑色; 边框宽度:1px; 边框样式:实心; } #d2{ 高度:50px; 宽度:50px; 边框颜色:红色; 边框宽度:1px; 边框样式:实心; 位置:相对位置; 顶部:-1px; 左:-1px; }
使用以下方法:
#d1{
高度:100px;
宽度:100px;
边框颜色:黑色;
边框宽度:1px;
边框样式:实心;
}
#d2{
高度:50px;
宽度:50px;
边框颜色:红色;
边框宽度:1px;
边框样式:实心;
位置:相对位置;
顶部:-1px;
左:-1px;
}

这两行没有连接在一起,因为
.two
元素在
.one
元素内部

可以将带有边框的div视为一个房间,周围有墙,在本例中,该房间包含另一个房间,周围有墙。您似乎预期会发生的是,两个“房间”被放置在彼此的顶部,而在HTML/CSS中,“房间”被放置在彼此的内部。如果希望行合并,可以在
两个
元素上使用负边距,如下所示:

.two {
    height: 30px;
    width: 30px;
    margin: -1px 0 0 -1px;
}

这样,
.two
元素看起来像是放在另一个元素的顶部

这两行没有连接在一起,因为
.two
元素在
.one
元素内部

可以将带有边框的div视为一个房间,周围有墙,在本例中,该房间包含另一个房间,周围有墙。您似乎预期会发生的是,两个“房间”被放置在彼此的顶部,而在HTML/CSS中,“房间”被放置在彼此的内部。如果希望行合并,可以在
两个
元素上使用负边距,如下所示:

.two {
    height: 30px;
    width: 30px;
    margin: -1px 0 0 -1px;
}

这样一来,
.two
元素看起来就像是放在另一个元素的顶部

我不确定,我理解这个答案。如果
.two
div大于
.one
,那么
.one
div靠近屏幕中心有什么关系?我不确定,我理解这个答案。如果
.two
div大于
.one
,那么
.one
div靠近屏幕中心有什么关系?请不要教我css布局/定位等。。。假设我在html/CSP中有一天大,请不要教我css布局/定位等。。。假设我在html/css中一天大,“这个父子关系与两个元素的显示无关。”是的。看。Div two进入Div one的内容框(但溢出)@Alohci从输出来看,它不像Div two进入Div one的内容框。从DOM树的角度来看,是的,Div two进入Div one的内容框。这会给出与层次结构一致的输出(
p
div
的子级)是的,因为div two溢出div one到右侧和下方。@Alohci编写代码时,如何预测层次结构是否与display一致?例如,输出表明,DOM层次结构与显示对齐,而不像上面的代码输出(在查询中),这是不直观的。在您运行代码之前,很难想象输出是这样的(如上所述)。对我来说,输出(在查询中)不是直观的。这使得事情更难学。我猜,您上面的评论是在看到输出后做出的。“这种父子关系与两个元素的显示无关。”是的。看。Div two进入Div one的内容框(但溢出)@Alohci从输出来看,它不像Div two进入Div one的内容框。从DOM树的角度来看,是的,Div two进入Div one的内容框。这会给出与层次结构一致的输出(
p
div
的子级)是的,因为div two溢出div one到右侧和下方。@Alohci编写代码时,如何预测层次结构是否与display一致?例如,输出表明,DOM层次结构与显示对齐,而不像上面的代码输出(在查询中),这是不直观的。在您运行代码之前,很难想象输出是这样的(如上所述)。对我来说,输出(在查询中)不是直观的。这使得事情更难学。我想,您的上述评论是在看到输出后发表的。我有一个问题。您是否能够回答(相同),而不必看到查询中给出的代码的输出?您能否重新格式化它?我不知道你说的“查询”是什么意思。我