gpt4 book ai didi

html - 为什么 child block 的行为与他们的 parent 不同,相对于他们 parent 的 sibling ?

转载 作者:行者123 更新时间:2023-11-28 15:46:42 25 4
gpt4 key购买 nike

我有一个这样的 HTML 结构:

    0.body
->>1.background
->>2.leftwing
->>2.rightwing
->>2.content block
->>3.top-content block
->>4.contacts block
->>4.title block
->>4.edited block

leftwing、rightwing 和内容 block 是兄弟。contacts, title 和 edited 是 sibling 。

这是我的 HTML:

<head>
<link rel="stylesheet" href="style.css">
</head>
<body>
<div class="bckdrp all">
<div class="lftfd all">
</div>
<div class="rtfd all">
</div>
<div class="bigbox all">
<div class="topbox all">
<div class="lftcnt inlblk all">
contact
</div>
<div class="midcnt inlblk all">
title
</div>
<div class="rtcnt inlblk all">
edited
</div>
</div>
<div class="topnav all">
<div class="toppnt all">
up
</div>
</div>
<div class="midbox all">
<div class="lftspc inlblk all">
</div>
<div class="midspc inlblk all">
<div class="super all">
LONG
<!--ENLONGATED-->
</div>
</div>
<div class="rtspc inlblk all">
<div class="navpad all">
<!--1--><div class="navcir all">1</div>
<!--2--><div class="navcir all">2</div>
<!--3--><div class="navcir all">3</div>
<!--4--><div class="navcir all">4</div>
<!--5--><div class="navcir all">5</div>
<!--6--><div class="navcir all">6</div>
</div>
</div>
</div>
<div class="botnav all">
<div class="botpnt all">
down
</div>
</div>
<div class="botbox all">
<div class="foot all">
<div class="acc all">
login
</div>
</div>
</div>
</div>
</div>
</body>

这是我的 CSS:

.bckdrp
{
background: url("img/bckdrp.jpg") center center no-repeat;
background-size: cover;
height: 100%;
width: 100%;
}

.lftfd
{
background: linear-gradient(to right, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.4), rgba(0, 0, 0, 0.0));
background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.4), rgba(0, 0, 0, 0.0));
background: -o-linear-gradient(left, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.4), rgba(0, 0, 0, 0.0));
background: -moz-linear-gradient(left, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.4), rgba(0, 0, 0, 0.0));
float: left;
height: 100%;
width: 30%;
}

.rtfd
{
background: linear-gradient(to right, rgba(0, 0, 0, 0.0), rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0.8));
background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0), rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0.8));
background: -o-linear-gradient(left, rgba(0, 0, 0, 0.0), rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0.8));
background: -moz-linear-gradient(left, rgba(0, 0, 0, 0.0), rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0.8));
float: right;
height: 100%;
width: 30%;
}




.inlblk
{
display: inline-block;
}


.bigbox
{
background-color: blue;
}

.topbox
{
background-color: yellow;
}

.all
{
border: 1px solid rgba(255, 0, 0, 0.5);
}

这是结果:

enter image description here

为什么content和top-content blocks(蓝色和黄色)的位置和维度不受左右翼的影响,但是top-content block的children的位置和维度(contacts,contacts,标题和编辑)是?

将 child 的显示更改为“阻止”并不能解决这个问题。除了 background-color 和 display: inline-block 之外,top-content block 和它的子 block 之间没有区别。

最佳答案

无论是 child ,如果他们是display:inline-block,或者他们的文本内容,如果 child 是display:block,都会避免 float ,因为它们所在的行框不会与 float 重叠。

虽然蓝色和黄色框是 block 框,即它们不在行框内。 block 框,除非它们建立 block 格式上下文,否则不会注意到 float 的存在,因此会完全延伸到整个页面。

关于html - 为什么 child block 的行为与他们的 parent 不同,相对于他们 parent 的 sibling ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42576612/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com