在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/HTML5  HTML/ 使用grid layout布局的疑問(wèn)?

使用grid layout布局的疑問(wèn)?

圖片描述

學(xué)習(xí)grid布局,對(duì)于圖片上的布局,我自己的實(shí)現(xiàn)如下:

//html
<header class="header">this is header</header>
<div class="container">
  <div class="item-1">clo 1</div>
  <div class="item-2">col 2</div>
  <div class="item-3">col 3</div>
  <div class="item-4">col 4</div>
  <div class="item-5">
      <h2>this is 44</h2>
  </div>
  <div class="item-6">
      <h1>123123</h1>
      <h1>123123</h1>
      <h1>123123</h1>
      <h1>123123</h1>
      <h1>123123</h1>
      <h1>123123</h1>
      <h1>123123</h1>
      <h1>123123</h1>
      <h1>123123</h1>
      <h1>123123</h1>
      <h1>123123</h1>
      <h1>123123</h1>
  </div>
</div>
<footer>this is footer</footer>
body, html {
    margin: 0px;
    padding: 0px;

    height: 100%;
}
header, footer {
    background-color: #999;
    text-align: center;
    padding: 10px;
    color: #fff;
}
header {
    grid-column: 1 / 5;
}
footer {
    position: fixed;
    bottom: 0;

    width: 100%;
    height: 30px;
}
.container {
    max-width: 1200px;
    height: 100%;
    margin: 0 auto;

    display: grid;
    /*   display: inline-grid; */

    grid-template-rows: 1fr;
    grid-template-columns: repeat(4, 1fr);

    grid-gap: 15px 20px;

    grid-template-areas:
            "m b i t"
            "m s s s"
            "m c c c";
}
.item-1 {
    background-color: aquamarine;
    height: 100vh;
    left: 0px;
    grid-area: m;
}
.item-2 {
    background-color: coral;

    grid-area: b;

    height: 120px;
    margin-top: 10px;
}
.item-3 {
    background-color: beige;

    grid-area: i;

    height: 120px;
    margin-top: 10px;
}
.item-4 {
    background-color: darkturquoise;

    grid-area: t;
    margin-top: 10px;
}
.item-5 {
    background-color: darkgray;

    grid-area: s;
}
.item-6 {
    background-color: darkcyan;
    grid-area: c;
    padding-bottom: 50px;
}

演示地址如下:

https://codepen.io/LeoJingHui...

但是,現(xiàn)在又遇到一個(gè)問(wèn)題,我苦思冥想了好幾天,不得其解:

對(duì)于左邊的item1,其實(shí)是一個(gè)固定屏幕的fixed效果,高度和瀏覽器高度一致,但是我如果使用grid做布局,左邊沒(méi)有辦法實(shí)現(xiàn)fixed的固定效果,怎么解決呢?(因?yàn)橐獙?shí)現(xiàn)響應(yīng)式布局,所以屏幕小于一定大小后,item1會(huì)被隱藏,點(diǎn)擊menu按鈕才會(huì)展現(xiàn)出來(lái))。

回答
編輯回答
伐木累

html

<div class="container">
  <div class="left">
  </div>
  <div class="right-1">
  </div>
  <div class="right-2">
  </div>
  <div class="right-3">
  </div>
  <div class="right-4">
  </div>
  <div class="right-5">
  </div>
  <div class="right-6">
  </div>
  <div class="right-7">
  </div>
  <div class="right-8">
  </div>
  <div class="right-9">
  </div>
  <div class="right-10">
  </div>
  <div class="right-11">
  </div>
</div>

css

.container {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-gap: 10px;
  grid-auto-rows: 50px;
}

.container div {
  background-color: #1c78d0;
}

.left {
  grid-column: 1 / 2;
  grid-row: 1 / 18;
}

.right-1 {
  grid-column: 2 / 3;
  grid-row: 1 / 3;
}

.right-2 {
  grid-column: 3 / 4;
  grid-row: 1 / 3;
}

.right-3 {
  grid-column: 4 / 5;
  grid-row: 1 / 3;
}

.right-4 {
  grid-column: 2 / 5;
  grid-row: 3 / 4;
}

.right-5 {
  grid-column: 2 / 5;
  grid-row: 4 / 6;
}

.right-6 {
  grid-column: 2 / 5;
  grid-row: 6 / 8;
}

.right-7 {
  grid-column: 2 / 5;
  grid-row: 8 / 10;
}

.right-8 {
  grid-column: 2 / 5;
  grid-row: 10 / 12;
}

.right-9 {
  grid-column: 2 / 5;
  grid-row: 12 / 14;
}

.right-10 {
  grid-column: 2 / 5;
  grid-row: 14 / 16;
}

.right-11 {
  grid-column: 2 / 5;
  grid-row: 16 / 18;
}

說(shuō)明

grid-column以及grid-row后面的2 / 3,不是三分之二的意思,是指從第2列開(kāi)始,到第3列結(jié)束。搞明白這個(gè)意思,就知道grid該怎么做了。

效果

https://codepen.io/fengerzh/p...

參考資料

2017年12月19日 10:56
編輯回答
柒槿年

謝邀,沒(méi)經(jīng)常使用這個(gè)布局
請(qǐng)參考文檔Grid_Layout
https://developer.mozilla.org...

2017年8月29日 22:35