html和css div的位置
我正在尝试制作一个包含图像/文本的div的网站,布局如下所示: 我不能张贴超过2个链接,因此文本示例。div位于中间html和css div的位置,html,css,Html,Css,我正在尝试制作一个包含图像/文本的div的网站,布局如下所示: 我不能张贴超过2个链接,因此文本示例。div位于中间 - - - - - - - 当我将浏览器变小时,div应该在彼此下面排列,如下所示: 但在我的代码中,它将如下所示: 我尝试过各种方法,但没有一种方法能使第一个div在这两种情况下都完美地结合在一起 html来源: <!DOCTYPE html> <html> <head> <link rel="stylesheet" ty
-
- -
- -
- -
当我将浏览器变小时,div应该在彼此下面排列,如下所示:
但在我的代码中,它将如下所示:
我尝试过各种方法,但没有一种方法能使第一个div在这两种情况下都完美地结合在一起
html来源:
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="style.css">
<title>Sinterklaas website</title>
</head>
<body style="background-color:black">
<center><div class = "secondary"></div></center>
<center>
<div class="main">
<table border="0" cellpadding="0" cellspacing="0" width="100%" height="100%">
<tr>
<td colspan="2" height="180px">
<a href="http://www.google.nl">
<img style="display:block;" width="100%" height="100%" src="arduino.jpg" />
</a>
</td>
</tr>
<tr>
<td colspan="1" bgcolor="blue" width="220px"></td>
<td bgcolor="green"></td>
</tr>
</table>
</div>
<div class="main" id="second">
<table border="0" cellpadding="0" cellspacing="0" width="100%" height="100%">
<tr>
<td colspan="2" height="180px">
<a href="http://www.google.nl">
<img style="display:block;" width="100%" height="100%" src="arduino.jpg" />
</a>
</td>
</tr>
<tr>
<td colspan="1" bgcolor="blue" width="220px"></td>
<td bgcolor="green"></td>
</tr>
</table>
</div>
</center>
<center>
<div class="main"></div>
<div class="main"></div>
</center>
<center>
<div class="main"></div>
<div class="main"></div>
</center>
</body>
任何帮助都将不胜感激 我稍微整理了一下您的html代码,取出了您的表,以便更容易查看结构 这就是你想要的吗 html,正文{ 保证金:0; } 身体{ 背景色:黑色; 背景图片:urlbackground.jpg; 背景重复:无重复; 背景附件:固定; 背景位置:中心; } .包装纸{ 保证金:0自动; 最小宽度:335px; 最大宽度:670px; 文本对齐:居中; } 梅因先生{ 背景色:红色; 显示:内联块; 位置:相对位置; 宽度:300px; 身高:225px; 利润率:15px; } .顶{ 高度:70像素; } @介质最小宽度:680px{ .左{ 文本对齐:左对齐; } }
要解决对齐难题,请从辅助对象中删除“左”属性 但这只是一个简单的解决方案,有许多元素布局决策对您不利。我在这里为您编写了一个修复程序,我认为这将有助于简化正在发生的事情: 添加了一个中心类来环绕所有内容。 使CSS代码具有相关性和可读性。 删除了CSS中的冗余代码。 根据OP的要求进行编辑,阅读评论: 将HTML更改为包含一个要换行的div.secondary div,它现在作为一整行工作。 将.center水平CSS更改为全宽和小屏幕大小。 一个有用的使用CSS,非常有趣和相关。此外,您还可以在许多其他地方模拟代码 身体{ 背景图片:urlbackground.jpg; 背景重复:无重复; 背景附件:固定; 背景位置:中心; 背景色:黑色; } .empty、.main、.secondary{ 位置:相对位置; 显示:内联块; 宽度:300px; 保证金:0自动; } 梅因先生{ 背景色:红色; 身高:225px; 利润率:15px; } .main>表格{ 边界:0; 宽度:100%; 身高:100%; } .中学{ 背景颜色:粉红色; 高度:70像素; } .测试{ 高度:260px; 利润率:30像素; } .空的{ 高度:0px; } 第二{ 背景图片:urlarduino.jpg; 背景大小:100%100%; } .水平居中{ 最小宽度:330px; 宽度:100%; 文本对齐:居中; } .水平居中{ 宽度:100%; }
已弃用,您不应该再使用它。@media查询的位置可能重复?这会将第一个div居中如果页面处于全屏模式,则第一个div必须位于全屏模式下第二个div的正上方,如下所示:当页面变小时,所有元素的位置都是正确的。是,我们需要知道它的宽度应该是2列,并且它们是从上到下包装的。您提供的代码段布局中唯一的变化是,如果页面足够大,可以显示两个collam,则最上面的div必须位于第一个collam的上方。如果页面仅足以显示1个COLLAM,则应将每个div置于彼此下方。如果您查看另一个答案并运行该代码,那么当您可以将一个collum放入browser@user3499284更新了我的答案。这会将所有div放在一起,只有当页面太小而无法显示它们时才应该这样做:我明白了,包装器div本身的好处是,您可以根据自己的需要对其进行修改,例如扩展以适合您的diva或使其成为中心,您认为可以基于此进行工作吗?我对html和css还不是很有经验,是否有任何网站可以帮助我实现这一概念?午餐后,我很乐意提供帮助,即:
body {
background-image: url("background.jpg");
background-repeat: no-repeat;
background-attachment: fixed;
background-position: center;
}
.main {
background-color: red;
display: inline-block;
position: relative;
width: 300px;
height: 225px;
margin: 15px;
}
.secondary {
background-color: red;
position: relative;
display: inline-block;
left: -165px;
width: 300px;
height: 70px;
margin: 0 auto;
}
.test {
background-color: red;
display: inline-block;
position: relative;
width: 300px;
height: 260px;
margin: 30px;
}
.empty {
position: relative;
display: inline-block;
background-color: red;
width: 300px;
height: 0px;
}
#first {
}
#second {
background-image: url("arduino.jpg");
background-size: 100% 100%;
}
#third {
}
#fourth {
}
#fifth {
}
#sixth {
}