正如你在標題中看到的,我想在不使用表格、Flexbox或網格系統的情況下制作一個網格。但是可以使用浮動。 它應該是這樣的(確切的顏色無關緊要):
我已經尋找一個類似的主題,但沒有找到任何東西,這可以幫助我。
我要改變什么,才能讓它看起來像上面的圖片? 這是我目前的代碼:
/* ########################################################################## */
/* Global Settings */
/* ########################################################################## */
html, body{
width: 100%;
height:100%;
font-family: Arial, sans-serif;
font-size: 16px;
}
*{
margin: 0;
padding: 0;
list-style: none;
box-sizing: border-box;
}
/* ########################################################################## */
/* Clearfix-Hack */
/* ########################################################################## */
.clearfix::after{
content:"";
clear:both;
display: block;
}
/* ########################################################################## */
/* Entire Page */
/* ########################################################################## */
.entire-page{
margin: 0 15%;
}
/* ########################################################################## */
/* Square/Rectangle */
/* ########################################################################## */
.square,
.div{
width: calc((100% - 60px) / 3);
float: left;
}
.div{
height:422px;
}
.rectangle {
width: calc((100% - 60px) / 3 * 2 + 30px);
float: left;
}
.row{
margin-bottom: 30px;
}
.row .square:nth-of-type(1) {
margin-right: 30px;
}
.row .square:nth-of-type(3) {
margin-left: 30px;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title></title>
<link rel="stylesheet" type="text/css" href="src/css/styles4.css">
</head>
<body>
<!-- ########################################################################## -->
<!-- Entire Page -->
<!-- ########################################################################## -->
<div class="entire-page">
<!-- ########################################################################## -->
<!-- Square/Rectangle -->
<!-- ########################################################################## -->
<section>
<div>
<div class="row row-1">
<div class="square pic1"><img src="https://www1.xup.in/exec/ximg.php?fid=56589964"></div>
<div class="square pic1"><img src="https://www1.xup.in/exec/ximg.php?fid=56589964"></div>
<div class="square div"></div>
</div>
<div class="row row-2">
<div class="rectangle pic2"><img src="https://www1.xup.in/exec/ximg.php?fid=19960346"></div>
<div class="square div"></div>
</div>
</div>
</section>
</div>
</body>
</html>
你可以用。有2行,即& lttr & gt第一行有3列,即& lt“td & gt”第二行只有2 & lttd & gts,并且該行的第一個具有colspan=2。
點擊此處了解更多關于表格的信息。
根據需要應用樣式。
你只需要依靠以下屬性就可以做到:position、top、left、bottom和right,這樣就可以設置正確的點來分配網格中的每個圖塊。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>StackOverflow</title>
<style>
:root {
--tile-gap: 10px;
--side: 70px;
}
.container {
margin: 2px;
padding: 20px;
position: relative;
}
.orange-tile {
background-color: orangered;
width: calc( var(--side) + var(--side) + var(--tile-gap) );
height: var(--side);
}
.gray-tile {
background-color: gray;
width: var(--side);
height: var(--side);
}
.tile1 {
position: absolute;
top: 0;
left: 0;
}
.tile2 {
position: absolute;
top: 0;
left: calc( var(--side) + var(--tile-gap));
}
.tile3 {
position: absolute;
top: 0;
left: calc( var(--side) * 2 + var(--tile-gap) * 2 );
}
.tile4 {
position: absolute;
top: calc( var(--side) + var(--tile-gap));
left: 0;
}
.tile5 {
position: absolute;
top: calc( var(--side) + var(--tile-gap));
left: calc( var(--side) * 2 + var(--tile-gap) * 2 );
}
</style>
</head>
<body>
<section class="container">
<div class="gray-tile tile1"></div>
<div class="gray-tile tile2"></div>
<div class="gray-tile tile3"></div>
<div class="orange-tile tile4"></div>
<div class="gray-tile tile5"></div>
</section>
</body>
</html>