您好,最近我开始使用 css 的 display:grid,因为它提供了更大的灵活性。手头的问题是我使用嵌套网格,并且它们不适合示例中提供的彼此。在下面的图像中,绿色网格应该适合红色网格左列,但它不适合。我不明白为什么它会这样。你能提供一些解释吗?
@import url('https://fonts.googleapis.com/css?family=Poppins:200,300,400,500,600,700,800,900&display=swap');
*{
margin: 0;
padding: 0;
box-sizing: border-box;
font-family: 'Poppins',sans-serif;
font-size: 10px;
}
body{
background: lightblue;
display: flex;
align-content: center;
justify-content: center;
align-items: center;
flex-wrap: nowrap;
flex-direction: column;
margin: 50px;
}
/* 595 x 842 px. 72ppi */
/* 96 PPI – 794 x 1123
/*150 PPI – 1240 x 1754 */
.container{
display: grid;
grid-template-columns: 25% 75%;
grid-template-rows: 100%;
grid-template-areas: "left right";
grid-gap: 10px;
min-height: 842px;height: 842px;
min-width:595px;width: 595px;
background-color:white;
padding-top: 75px;
padding-left: 50px;
padding-right: 50px;
padding-bottom: 50px;
}
.left{
grid-area: left;
display: grid;
grid-template-areas:
"contact"
"skills"
"skills"
"skills"
"languages";
grid-gap: 10px;
font-size:1rem;
}
.contact{
grid-area: contact;
word-wrap: break-word;
}
.contact>h2::before{
content: "\2022";
}
.skills{
grid-area: skills;
}
.languages{
grid-area: languages;
}
.right{
grid-area: right;
display: grid;
grid-template-areas:
"intro"
"history"
"history"
"history"
"education"
"about";
grid-gap: 10px;
}
.intro{
grid-area: intro;
display: grid;
grid-template-areas:
"photo name name name"
"content content content content";
}
.photo{
grid-area: photo;
}
.name{
grid-area: name;
}
.content{
grid-area: content;
}
.history{
grid-area: history;
}
.education{
grid-area: education;
}
.about{
grid-area: about;
}
<!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">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.css">
<link rel="stylesheet" type="text/css" href="index.css">
<title>Document</title>
</head>
<body>
<div class="container">
<div class="left">
<div class="contact">
<h2>Contact</h2>
<p>
<span class="fa-stack fa-sm">
<i class="fa fa-circle fa-stack-2x" style="color:rgb(0, 100, 230);"></i>
<i class="fa fa-flag fa-stack-1x fa-inverse"></i>
</span>
124124124124
</p>
<p>
<span class="fa-stack fa-sm">
<i class="fa fa-circle fa-stack-2x" style="color:rgb(0, 100, 230);"></i>
<i class="fa fa-flag fa-stack-1x fa-inverse"></i>
</span>
124124124214
</p>
<p>
<span class="fa-stack fa-sm">
<i class="fa fa-circle fa-stack-2x" style="color:rgb(0, 100, 230);"></i>
<i class="fa fa-flag fa-stack-1x fa-inverse"></i>
</span>
111111111111111111111111111112222222222222222222222211111111111
</p>
<p>
<span class="fa-stack fa-sm">
<i class="fa fa-circle fa-stack-2x" style="color:rgb(0, 100, 230);"></i>
<i class="fa fa-flag fa-stack-1x fa-inverse"></i>
</span>
12312412412412412414
</p>
</div>
<div class="skills"></div>
<div class="languages"></div>
</div>
<div class="right">
<div class="intro">
<div class="photo"></div>
<div class="name"></div>
<div class="content"></div>
</div>
<div class="history"></div>
<div class="education"></div>
<div class="about"></div>
</div>
</div>
</body>
</html>