CSS TUTORIAL IN BANGLA PART-10: CSS Grid View Layout

CSS āĻ Grid View Layout āĻ•āĻŋ?

CSS āĻĻāĻŋāĻ¯āĻŧā§‡ āĻāĻ•āĻŸāĻŋ āĻ“āĻ¯āĻŧā§‡āĻŦ āĻĒā§‡āĻœāĻ•ā§‡ āĻ°ā§‹-āĻ•āĻ˛āĻžāĻŽā§‡ āĻŦāĻŋāĻ­āĻ•ā§āĻ¤ āĻ•āĻ°ā§‡ āĻ¯ā§‡ āĻ˛ā§‡-āĻ†āĻ‰āĻŸ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻ•ā§‡ CSS grid View Layout āĻŦāĻ˛āĻžāĻšāĻ¯āĻŧāĨ¤ āĻāĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻāĻ–āĻžāĻ¨ā§‡ āĻ•ā§‹āĻ¨ā§‹ āĻ°āĻ•āĻŽ html table, CSS float āĻāĻŦāĻ‚ CSS Positioning āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĻ¨āĻžāĨ¤ āĻ“āĻ¯āĻŧā§‡āĻŦ āĻĒā§‡āĻœ āĻĄāĻŋāĻœāĻžāĻ‡āĻ¨ā§‡āĻ° āĻ¸āĻŽāĻ¯āĻŧ Grid āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻ–ā§āĻŦāĻ‡ āĻ—ā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖāĨ¤ āĻāĻŸāĻŋ āĻ“āĻ¯āĻŧā§‡āĻŦ āĻĒā§‡āĻœā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻāĻ˛āĻŋāĻŽā§‡āĻ¨ā§āĻŸ āĻ—ā§āĻ˛ā§‹āĻ•ā§‡ āĻ¸āĻ āĻŋāĻ• āĻœāĻžāĻ¯āĻŧāĻ—āĻžāĻ¯āĻŧ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻž āĻ¸āĻšāĻœ āĻ•āĻ°ā§‡ āĻ¤ā§‹āĻ˛ā§‡āĨ¤ Responsive Grid View āĻ¤ā§‡ āĻ…āĻ§āĻŋāĻ•āĻžāĻ‚āĻļ āĻ¸āĻŽāĻ¯āĻŧ ā§§ā§¨ āĻŸāĻŋ āĻ•āĻ˛āĻžāĻŽ āĻĨāĻžāĻ•ā§‡, ā§§ā§¨ āĻŸāĻŋ āĻ•āĻ˛āĻžāĻŽ āĻŽāĻŋāĻ˛ā§‡ āĻāĻ° āĻŽā§‹āĻŸ āĻĒā§āĻ°āĻ¸ā§āĻĨ āĻšāĻ¯āĻŧ ā§§ā§Ļā§Ļ% āĻāĻŦāĻ‚ āĻ†āĻĒāĻ¨āĻŋ āĻŦā§āĻ°āĻžāĻ‰āĻœāĻžāĻ°ā§‡āĻ° āĻ†āĻ•āĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻžāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻžāĻĨā§‡ āĻ‡āĻšāĻž āĻ¸āĻ‚āĻ•ā§āĻšāĻŋāĻ¤ āĻ“ āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŋāĻ¤ āĻšāĻŦā§‡āĨ¤

CSS āĻ Grid View Layout āĻ¤ā§ˆāĻ°āĻŋāĻ° āĻœāĻ¨ā§āĻ¯ āĻ•āĻŋ āĻ•āĻŋ property āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻšāĻ¯āĻŧ?

CSS āĻ Grid View Layout āĻ¤ā§ˆāĻ°āĻŋāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¨āĻŋāĻŽā§āĻ¨ā§‡āĻ° property āĻāĻŦāĻ‚ āĻ¤āĻžāĻĻā§‡āĻ° value āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻšāĻ¯āĻŧāĨ¤

  • display:gird/inline-grid
  • grid-template-columns: none|auto|max-content|min-content|length|initial|inherit;
  • grid-template-rows: none|auto|max-content|min-content|length|initial|inherit;
  • grid-row-start: auto|row-line;
  • grid-row-end: auto|row-line|span n;
  • grid-row: grid-row-start / grid-row-end;
  • grid-column-start: auto|span n|column-line;
  • grid-column-end: auto|span n|column-line;
  • grid-column: grid-column-start / grid-column-end;
  • grid-area: grid-row-start / grid-column-start / grid-row-end / grid-column-end | itemname;
  • grid-auto-rows: auto|max-content|min-content|length;
  • grid-auto-flow: row|column|dense|row dense|column dense;
  • grid-row-gap: length;
  • grid-column-gap: length;
  • grid-gap: grid-row-gap grid-column-gap;
  • grid-template: none|grid-template-rows / grid-template-columns|grid-template-areas|initial|inherit;
  • grid-template-areas: none|itemnames;
  • grid: none|grid-template-rows / grid-template-columns|grid-template-areas|grid-template-rows / [grid-auto-flow] grid-auto-columns|[grid-auto-flow] grid-auto-rows / grid-template-columns|initial|inherit;
  • grid-auto-columns: auto|max-content|min-content|length;

display:grid

html āĻāĻ° āĻ•ā§‹āĻ¨ā§‹ parent <div> block āĻāĻ° child <div> block āĻ—ā§āĻ˛ā§‹āĻ•ā§‡ grid āĻ†āĻ•āĻžāĻ°ā§‡ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ¯āĻžāĻ°ā§‡āĻ¨ā§āĻŸ <div> āĻ•ā§‡ css āĻ display:grid āĻ˜ā§‹āĻˇāĻŖāĻž āĻ•āĻ°āĻ¤ā§‡ āĻšāĻ¯āĻŧāĨ¤ āĻšāĻ˛ā§āĻ¨ āĻāĻ•āĻŸāĻž āĻ‰āĻĻāĻžāĻšāĻ°āĻŖā§‡ āĻĻā§‡āĻ–āĻž āĻ¯āĻžāĻ•:

<!DOCTYPE html>
<html>
<head>
<style>
.grid-container {
  display: grid;
  grid-template-columns: auto auto auto;
  background-color: #2196F3;
  padding: 10px;
}
 
.grid-item {
  background-color: #F06292;
  margin:5px;
  padding: 20px;
  font-size: 30px;
  text-align: center;
}
</style>
</head>
<body>
<div class="grid-container">
  <div class="grid-item">1</div>
  <div class="grid-item">2</div>
  <div class="grid-item">3</div>  
  <div class="grid-item">4</div>
  <div class="grid-item">5</div>
  <div class="grid-item">6</div>  
  <div class="grid-item">7</div>
  <div class="grid-item">8</div>
  <div class="grid-item">9</div>  
</div>
</body>
</html>

Output

āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž: āĻāĻ–āĻžāĻ¨ā§‡ āĻ†āĻŽāĻ°āĻž grid-template-columns property āĻĻāĻŋāĻ¯āĻŧā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° grid āĻāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻ•āĻ˛āĻžāĻŽā§‡āĻ° size āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°ā§‡āĻ›āĻŋāĨ¤

display: inline-grid;

CSS āĻ display: inline-grid; āĻšā§āĻŦāĻšā§ display:grid āĻāĻ° āĻŽāĻ¤ā§‹āĻ‡ āĻ•āĻžāĻœ āĻ•āĻ°ā§‡ , āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āĻ¯ āĻšāĻšā§āĻ›ā§‡ display:grid āĻāĻ° āĻ…āĻ§ā§€āĻ¨ā§‡ <div> block āĻ—ā§āĻ˛ā§‹ screen āĻāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¤āĻžāĻĻā§‡āĻ° size automatically adjust āĻ•āĻ°ā§‡ āĻ¨ā§‡āĻ¯āĻŧ, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ display: inline-grid screen āĻāĻ° āĻ¸āĻžāĻĨā§‡ adjust āĻ•āĻ°ā§‡āĻ¨āĻžāĨ¤āĻ…āĻ°ā§āĻĨāĻžā§Ž fixed āĻ‡ āĻĨāĻžāĻ•ā§‡āĨ¤ āĻšāĻ˛ā§āĻ¨ āĻ¨āĻŋāĻšā§‡āĻ° āĻ‰āĻĻāĻžāĻšāĻ°āĻŖā§‡ āĻĻā§‡āĻ–āĻž āĻ¯āĻžāĻ•:

<!DOCTYPE html>
<html>
<head>
<style>
.grid-container {
  display: inline-grid;
  grid-template-columns: auto auto auto;
  background-color: #2196F3;
  padding: 10px;
}
 
.grid-item {
  background-color: #F06292;
  margin:5px;
  padding: 20px;
  font-size: 30px;
  text-align: center;
}
</style>
</head>
<body>
<div class="grid-container">
  <div class="grid-item">1</div>
  <div class="grid-item">2</div>
  <div class="grid-item">3</div>  
  <div class="grid-item">4</div>
  <div class="grid-item">5</div>
  <div class="grid-item">6</div>  
  <div class="grid-item">7</div>
  <div class="grid-item">8</div>
  <div class="grid-item">9</div>  
</div>
</body>
</html>

Output

āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž: āĻāĻ–āĻ¨ āĻ¯āĻĻāĻŋ āĻ†āĻĒāĻ¨āĻŋ āĻāĻ‡ window āĻŸāĻŋ āĻ›ā§‹āĻŸ āĻ…āĻĨāĻŦāĻž āĻŦāĻĄāĻŧ āĻ•āĻ°ā§‡āĻ¨, āĻ¤āĻžāĻšāĻ˛ā§‡ display:grid āĻāĻ° āĻ†āĻ‡āĻŸā§‡āĻŽ āĻ—ā§āĻ˛ā§‹āĻ“ āĻ›ā§‹āĻŸ āĻāĻŦāĻ‚ āĻŦāĻĄāĻŧ āĻšāĻ¤ā§‡ āĻĨāĻžāĻ•āĻŦā§‡āĨ¤ āĻ•āĻŋāĻ¨ā§āĻ¤ā§ display: inline-grid; āĻāĻ° āĻ•ā§‹āĻ¨ā§‹ āĻ§āĻ°āĻŖā§‡āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ†āĻ¸āĻŦā§‡āĻ¨āĻžāĨ¤

grid āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ•āĻ¤ āĻ—ā§āĻ˛ā§‹ column āĻšāĻŦā§‡ , āĻāĻŦāĻ‚ āĻĒā§āĻ°āĻ¤ā§āĻ¯ā§‡āĻ•āĻŸāĻŋ column āĻāĻ° āĻĄāĻŋāĻĢāĻ˛ā§āĻŸ āĻ¸āĻžāĻ‡āĻœ āĻ•āĻŋ āĻšāĻŦā§‡? āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ

grid āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ•āĻ¤ āĻ—ā§āĻ˛ā§‹ column āĻšāĻŦā§‡ , āĻāĻŦāĻ‚ āĻĒā§āĻ°āĻ¤ā§āĻ¯ā§‡āĻ•āĻŸāĻŋ column āĻāĻ° āĻĄāĻŋāĻĢāĻ˛ā§āĻŸ āĻ¸āĻžāĻ‡āĻœ āĻ•āĻŋ āĻšāĻŦā§‡, āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖā§‡āĻ° āĻœāĻ¨ā§āĻ¯ CSS 3 āĻ¤ā§‡ grid-template-columns property āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻšāĻ˛ā§āĻ¨ āĻāĻ•āĻŸāĻž āĻ‰āĻĻāĻžāĻšāĻ°āĻŖā§‡āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻŦā§āĻ¯āĻžāĻĒāĻžāĻ°āĻŸāĻž āĻĻā§‡āĻ–āĻž āĻ¯āĻžāĻ•:

<!DOCTYPE html>
<html>
<head>
<style>
 
.grid-container {
  display: grid;
  grid-template-columns: 100px auto 200px 150px;
  grid-gap: 10px;
  background-color: darkcyan;
  padding: 10px;
}
 
.grid-container > div {
  background-color: rgba(255, 255, 255, 0.8);
  text-align: center;
  padding: 20px 0;
  font-size: 30px;
}
</style>
</head>
<body>
<div class="grid-container">
  <div class="item1">1</div>
  <div class="item2">2</div>
  <div class="item3">3</div>  
  <div class="item4">4</div>
  <div class="item5">5</div>
  <div class="item6">6</div>
  <div class="item7">7</div>
  <div class="item8">8</div>
</div>
</body>
</html>

Output

grid āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻĒā§āĻ°āĻ¤ā§āĻ¯ā§‡āĻ•āĻŸāĻŋ row āĻāĻ° āĻĄāĻŋāĻĢāĻ˛ā§āĻŸ āĻ¸āĻžāĻ‡āĻœ āĻ•āĻŋ āĻšāĻŦā§‡? āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ

grid āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻĒā§āĻ°āĻ¤ā§āĻ¯ā§‡āĻ•āĻŸāĻŋ row āĻāĻ° āĻĄāĻŋāĻĢāĻ˛ā§āĻŸ āĻ¸āĻžāĻ‡āĻœ āĻ•āĻŋ āĻšāĻŦā§‡ āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖā§‡āĻ° āĻœāĻ¨ā§āĻ¯ CSS 3 āĻ¤ā§‡ grid-template-rows property āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻšāĻ˛ā§āĻ¨ āĻāĻ•āĻŸāĻž āĻ‰āĻĻāĻžāĻšāĻ°āĻŖā§‡āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻŦā§āĻ¯āĻžāĻĒāĻžāĻ°āĻŸāĻž āĻĻā§‡āĻ–āĻž āĻ¯āĻžāĻ•:

<!DOCTYPE html>
<html>
<head>
<style>
.grid-container {
  display: grid;
  grid-template-columns: auto auto auto;
  grid-template-rows: 100px 250px 80px;
  grid-gap: 10px;
  background-color: teal;
  padding: 10px;
}
 
.grid-container > div {
  background-color: rgba(255, 255, 255, 0.8);
  text-align: center;
  padding: 20px 0;
  font-size: 30px;
}
</style>
</head>
<body>
<div class="grid-container">
  <div class="item1">1</div>
  <div class="item2">2</div>
  <div class="item3">3</div>  
  <div class="item4">4</div>
  <div class="item5">5</div>
  <div class="item6">6</div>
  <div class="item7">7</div>
  <div class="item8">8</div>
</div>
</body>
</html>

Output

āĻ•āĻŋāĻ­āĻžāĻŦā§‡ grid āĻāĻ° row āĻāĻ° item āĻ—ā§āĻ˛ā§‹āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ•ā§‹āĻ¨ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ Item āĻĻāĻŋāĻ¯āĻŧā§‡ row āĻ•ā§‡ āĻļā§āĻ°ā§ āĻ•āĻ°āĻŦā§‡āĻ¨ ?

grid āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ row āĻāĻ° item āĻ—ā§āĻ˛ā§‹āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ•ā§‹āĻ¨ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ Item āĻŦāĻž āĻ•āĻ¤ āĻ¨āĻŽā§āĻŦāĻ° Item āĻĻāĻŋāĻ¯āĻŧā§‡ CSS āĻāĻ° row āĻŸāĻŋ āĻļā§āĻ°ā§ āĻšāĻŦā§‡ āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖā§‡āĻ° āĻœāĻ¨ā§āĻ¯ CSS āĻāĻ° grid-row-start property āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻšāĻ˛ā§āĻ¨ āĻāĻ•āĻŸāĻž āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻŦā§āĻœā§‡ āĻ¨ā§‡āĻ¯āĻŧāĻž āĻ¯āĻžāĻ•:

<!DOCTYPE html>
<html>
<head>
<style>
.grid-container {
  display: grid;
  grid-template-columns: auto auto auto auto;
  grid-gap: 10px;
  background-color: purple;
  padding: 10px;
}
 
.grid-container > div {
  background-color: rgba(255, 255, 255, 0.8);
  text-align: center;
  padding: 20px 0;
  font-size: 30px;
}
 
.item1 {
  grid-row-start: 2;
}
</style>
</head>
<body>
<div class="grid-container">
  <div class="item1">1</div>
  <div class="item2">2</div>
  <div class="item3">3</div>  
  <div class="item4">4</div>
  <div class="item5">5</div>
  <div class="item6">6</div>
</div>
</body>
</html>

Output

āĻ•āĻŋāĻ­āĻžāĻŦā§‡ grid āĻāĻ° row āĻāĻ° item āĻ—ā§āĻ˛ā§‹āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ•ā§‹āĻ¨ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ Item āĻ•ā§‡ āĻāĻ•āĻžāĻ§āĻŋāĻ• row āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ span āĻŦāĻž āĻŦāĻ°ā§āĻ§āĻŋāĻ¤ āĻ•āĻ°āĻŦā§‡āĻ¨?

grid āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ row āĻāĻ° item āĻ—ā§āĻ˛ā§‹āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ•ā§‹āĻ¨ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ Item āĻ•ā§‡ āĻāĻ•āĻžāĻ§āĻŋāĻ• row āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ span āĻŦāĻž āĻŦāĻ°ā§āĻ§āĻŋāĻ¤ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ CSS āĻāĻ° grid-row-end property āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻšāĻ˛ā§āĻ¨ āĻāĻ•āĻŸāĻž āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻŦā§āĻœā§‡ āĻ¨ā§‡āĻ¯āĻŧāĻž āĻ¯āĻžāĻ•:

<!DOCTYPE html>
<html>
<head>
<style>
.grid-container {
  display: grid;
  grid-template-columns: auto auto auto;
  grid-gap: 10px;
  background-color: purple;
  padding: 10px;
}
 
.grid-container > div {
  background-color: rgba(255, 255, 255, 0.8);
  text-align: center;
  padding: 20px 0;
  font-size: 30px;
}
 
.item1 {
  grid-row-end: span 3;
}
</style>
</head>
<body>
<div class="grid-container">
  <div class="item1">1</div>
  <div class="item2">2</div>
  <div class="item3">3</div>  
  <div class="item4">4</div>
  <div class="item5">5</div>
  <div class="item6">6</div>
  <div class="item7">7</div>
</div>
</body>
</html>

Output

CSS grid-row-start, grid-row-end āĻāĻ‡ āĻĻā§āĻŸāĻŋ property āĻāĻ° āĻ•ā§‹āĻ¨ā§‹ short-hand property āĻ†āĻ›ā§‡?

āĻœāĻŋ āĻ†āĻ›ā§‡ , āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ grid-row property āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤ āĻ†āĻ° āĻāĻŸāĻžāĻ° syntax āĻšāĻšā§āĻ›ā§‡ āĻ āĻŋāĻ• āĻ¨āĻŋāĻšā§‡āĻ° āĻŽāĻ¤ā§‹ :

grid-row: grid-row-start / grid-row-end;

āĻšāĻ˛ā§āĻ¨ āĻāĻ•āĻŸāĻž āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻĻā§‡āĻ–āĻž āĻ¯āĻžāĻ•:

<!DOCTYPE html>
<html>
<head>
<style>
.grid-container {
  display: grid;
  grid-template-columns: auto auto auto auto;
  grid-gap: 10px;
  background-color: purple;
  padding: 10px;
}
 
.grid-container > div {
  background-color: rgba(255, 255, 255, 0.8);
  text-align: center;
  padding: 20px 0;
  font-size: 30px;
}
 
.item1 {
  grid-row: 1 / span 2;
}
</style>
</head>
<body>
<div class="grid-container">
  <div class="item1">1</div>
  <div class="item2">2</div>
  <div class="item3">3</div>  
  <div class="item4">4</div>
  <div class="item5">5</div>
  <div class="item6">6</div>
  <div class="item7">7</div>
</div>
</body>
</html>

Output

grid āĻāĻ° row āĻāĻ° item āĻ—ā§āĻ˛ā§‹āĻ•ā§‡ āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻ•ā§‹āĻ¨ā§‹ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ column-line āĻĻāĻŋāĻ¯āĻŧā§‡ āĻļā§āĻ°ā§ āĻ•āĻ°āĻŦā§‡āĻ¨ ?

grid āĻāĻ° row āĻāĻ° item āĻ—ā§āĻ˛ā§‹āĻ•ā§‡ āĻāĻ•āĻŸāĻž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ column-line āĻĻāĻŋāĻ¯āĻŧā§‡ āĻļā§āĻ°ā§ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ CSS āĻāĻ° grid-column-start property āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻšāĻ˛ā§āĻ¨ āĻāĻ•āĻŸāĻž āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻŦā§āĻœā§‡ āĻ¨ā§‡āĻ¯āĻŧāĻž āĻ¯āĻžāĻ•:

<!DOCTYPE html>
<html>
<head>
<style>
.grid-container {
  display: grid;
  grid-template-columns: auto auto auto auto;
  grid-gap: 10px;
  background-color: purple;
  padding: 10px;
}
.grid-container > div {
  background-color: rgba(255, 255, 255, 0.8);
  text-align: center;
  padding: 20px 0;
  font-size: 30px;
}
.item1 {
  grid-column-start: 2;
}
</style>
</head>
<body>
<div class="grid-container">
  <div class="item1">1</div>
  <div class="item2">2</div>
  <div class="item3">3</div>  
  <div class="item4">4</div>
  <div class="item5">5</div>
  <div class="item6">6</div>
</div>
</body>
</html>

Output

āĻ•āĻŋāĻ­āĻžāĻŦā§‡ grid āĻāĻ° āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ column āĻ•ā§‡ āĻāĻ•āĻžāĻ§āĻŋāĻ• column āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ span āĻŦāĻž āĻŦāĻ°ā§āĻ§āĻŋāĻ¤ āĻ•āĻ°āĻŦā§‡āĻ¨?

grid āĻāĻ° āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ column āĻ•ā§‡ āĻāĻ•āĻžāĻ§āĻŋāĻ• column āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ span āĻŦāĻž āĻŦāĻ°ā§āĻ§āĻŋāĻ¤ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ CSS āĻāĻ° grid-column-end property āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻšāĻ˛ā§āĻ¨ āĻāĻ•āĻŸāĻž āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻŦā§āĻœā§‡ āĻ¨ā§‡āĻ¯āĻŧāĻž āĻ¯āĻžāĻ•:

<!DOCTYPE html>
<html>
<head>
<style>
.grid-container {
  display: grid;
  grid-template-columns: auto auto auto auto;
  grid-gap: 10px;
  background-color: purple;
  padding: 10px;
}
 
.grid-container > div {
  background-color: rgba(255, 255, 255, 0.8);
  text-align: center;
  padding: 20px 0;
  font-size: 30px;
}
 
.item1 {
  grid-column-end: span 3;
}
</style>
</head>
<body>
<div class="grid-container">
  <div class="item1">1</div>
  <div class="item2">2</div>
  <div class="item3">3</div>  
  <div class="item4">4</div>
  <div class="item5">5</div>
  <div class="item6">6</div>
</div>
</body>
</html>

Output

CSS grid-column-start, grid-column-end āĻāĻ‡ āĻĻā§āĻŸāĻŋ property āĻāĻ° āĻ•ā§‹āĻ¨ā§‹ short-hand property āĻ†āĻ›ā§‡?

āĻœāĻŋ āĻ†āĻ›ā§‡ , āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ grid-column property āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤ āĻ†āĻ° āĻāĻŸāĻžāĻ° syntax āĻšāĻšā§āĻ›ā§‡ āĻ āĻŋāĻ• āĻ¨āĻŋāĻšā§‡āĻ° āĻŽāĻ¤ā§‹ :

grid-row: grid-column-start / grid-column-end;

āĻšāĻ˛ā§āĻ¨ āĻāĻ•āĻŸāĻž āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻĻā§‡āĻ–āĻž āĻ¯āĻžāĻ•:

<!DOCTYPE html>
<html>
<head>
<style>
.grid-container {
  display: grid;
  grid-template-columns: auto auto auto auto;
  grid-gap: 10px;
  background-color: purple;
  padding: 10px;
}
 
.grid-container > div {
  background-color: rgba(255, 255, 255, 0.8);
  text-align: center;
  padding: 20px 0;
  font-size: 30px;
}
 
.item1 {
  grid-column: 1 / span 2;
}
</style>
</head>
<body>
<div class="grid-container">
  <div class="item1">1</div>
  <div class="item2">2</div>
  <div class="item3">3</div>  
  <div class="item4">4</div>
  <div class="item5">5</div>
  <div class="item6">6</div>
  <div class="item7">7</div>
</div>
</body>
</html>

Output

grid layout āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ area specify:

grid layout āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ area specify āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ CSS 3 āĻ¤ā§‡ grid-template-area property āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻ†āĻ° grid-template-area āĻāĻ° āĻ¸āĻŋāĻ¨āĻŸā§‡āĻ•ā§āĻ¸ āĻ āĻŋāĻ• āĻ¨āĻŋāĻšā§‡āĻ° āĻŽāĻ¤ā§‹ :

grid-template-areas: none|itemnames;

āĻšāĻ˛ā§āĻ¨ āĻāĻ•āĻŸāĻž āĻ‰āĻĻāĻžāĻšāĻ°āĻŖā§‡āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻŦā§āĻ¯āĻžāĻĒāĻžāĻ°āĻŸāĻž āĻĻā§‡āĻ–āĻž āĻ¯āĻžāĻ•:

<!DOCTYPE html>
<html>
<head>
<style>
.item1 { grid-area: header; }
.item2 { grid-area: menu; }
.item3 { grid-area: main; }
.item4 { grid-area: right; }
.item5 { grid-area: footer; }
 
.grid-container {
  display: grid;
  grid-template-areas:
  'header header header header header header'
  'menu main main main right right'
  'menu footer footer footer footer footer';
  grid-gap: 10px;
  background-color: #2196F3;
  padding: 10px;
}
 
.grid-container > div {
  background-color: rgba(255, 255, 255, 0.8);
  text-align: center;
  padding: 20px 0;
  font-size: 30px;
}
</style>
</head>
<body>
<div class="grid-container">
  <div class="item1">Header</div>
  <div class="item2">Menu</div>
  <div class="item3">Main</div>  
  <div class="item4">Right</div>
  <div class="item5">Footer</div>
</div>
</body>
</html>

Output

grid āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻĒā§āĻ°āĻ¤ā§āĻ¯ā§‡āĻ•āĻŸāĻŋ Item āĻāĻ° āĻ¨āĻžāĻŽ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ:

grid āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻĒā§āĻ°āĻ¤ā§āĻ¯ā§‡āĻ•āĻŸāĻŋ Item āĻāĻ° āĻ¨āĻžāĻŽ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖā§‡āĻ° āĻœāĻ¨ā§āĻ¯ CSS 3 āĻ¤ā§‡ grid-area property āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻ¤āĻž āĻ›āĻžāĻĄāĻŧāĻž CSS grid-row-start, grid-column-start, grid-row-end, grid-column-end āĻāĻ‡ āĻšāĻžāĻ°āĻŸāĻŋ property āĻāĻ° short-hand property āĻšāĻŋāĻ¸ā§‡āĻŦā§‡āĻ“ āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻ†āĻ° grid-area āĻāĻ° āĻ¸āĻŋāĻ¨āĻŸā§‡āĻ•ā§āĻ¸ āĻ āĻŋāĻ• āĻ¨āĻŋāĻšā§‡āĻ° āĻŽāĻ¤ā§‹ :

grid-area: grid-row-start / grid-column-start / grid-row-end / grid-column-end | itemname;

āĻšāĻ˛ā§āĻ¨ āĻāĻ•āĻŸāĻž āĻ‰āĻĻāĻžāĻšāĻ°āĻŖā§‡āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻŦā§āĻ¯āĻžāĻĒāĻžāĻ°āĻŸāĻž āĻĻā§‡āĻ–āĻž āĻ¯āĻžāĻ•:

<!DOCTYPE html>
<html>
<head>
<style>
.item1 {
  grid-area: myArea;
}
 
.grid-container {
  display: grid;
  grid-template-areas: 'myArea myArea myArea myArea myArea';
  grid-gap: 10px;
  background-color: firebrick;
  padding: 10px;
}
 
.grid-container > div {
  background-color: rgba(255, 255, 255, 0.8);
  text-align: center;
  padding: 20px 0;
  font-size: 30px;
}
</style>
</head>
<body>
<div class="grid-container">
  <div class="item1">1</div>
  <div class="item2">2</div>
  <div class="item3">3</div>  
  <div class="item4">4</div>
  <div class="item5">5</div>
  <div class="item6">6</div>
</div>
</body>
</html>

Output

CSS grid-row-start, grid-column-start, grid-row-end, grid-column-end āĻāĻ‡ āĻšāĻžāĻ°āĻŸāĻŋ property āĻāĻ° āĻ•ā§‹āĻ¨ā§‹ short-hand property āĻ†āĻ›ā§‡?

āĻœāĻŋ āĻ†āĻ›ā§‡ , āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ grid-area property āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤ āĻ†āĻ° āĻāĻŸāĻžāĻ° syntax āĻšāĻšā§āĻ›ā§‡ āĻ āĻŋāĻ• āĻ¨āĻŋāĻšā§‡āĻ° āĻŽāĻ¤ā§‹ :

grid-row-start / grid-column-start / grid-row-end / grid-column-end.

āĻšāĻ˛ā§āĻ¨ āĻāĻ•āĻŸāĻž āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻĻā§‡āĻ–āĻž āĻ¯āĻžāĻ•:

<!DOCTYPE html>
<html>
<head>
<style>
.grid-container {
  display: grid;
  grid-template-columns: auto auto auto auto;
  grid-gap: 10px;
  background-color: purple;
  padding: 10px;
}
 
.grid-container > div {
  background-color: rgba(255, 255, 255, 0.8);
  text-align: center;
  padding: 20px 0;
  font-size: 30px;
}
 
.item1 {
  grid-area: 2 / 1 / span 2 / span 3;
}
</style>
</head>
<body>
<div class="grid-container">
  <div class="item1">1</div>
  <div class="item2">2</div>
  <div class="item3">3</div>  
  <div class="item4">4</div>
  <div class="item5">5</div>
  <div class="item6">6</div>
  <div class="item7">7</div>
</div>
</body>
</html>

Output

grid āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ row āĻ—ā§āĻ˛ā§‹āĻ•ā§‡ āĻāĻ•āĻŸāĻž default size āĻĒā§āĻ°āĻ§āĻžāĻ¨ :

grid āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ row āĻ—ā§āĻ˛ā§‹āĻ•ā§‡ āĻāĻ•āĻŸāĻž default size āĻĒā§āĻ°āĻ§āĻžāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ grid-auto-rows property āĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤ āĻāĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻ¯āĻĻāĻŋ āĻ•āĻ–āĻ¨ā§‹ grid-template-rows property āĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡āĻ¨ , āĻ¸ā§‡āĻŸāĻŋ grid-auto-rows property āĻ•ā§‡ override āĻ•āĻ°āĻŦā§‡āĨ¤ āĻšāĻ˛ā§āĻ¨ āĻāĻ•āĻŸāĻž āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻĻā§‡āĻ–āĻž āĻ¯āĻžāĻ•:

<!DOCTYPE html>
<html>
<head>
<style>
.item1 { grid-area: 1 / 1 / 2 / 2; }
.item2 { grid-area: 1 / 2 / 2 / 3; }
.item3 { grid-area: 1 / 3 / 2 / 4; }
.item4 { grid-area: 2 / 1 / 3 / 2; }
.item5 { grid-area: 2 / 2 / 3 / 3; }
.item6 { grid-area: 2 / 3 / 3 / 4; }
 
.grid-container {
  display: grid;
  grid-auto-rows: 150px;
  grid-gap: 10px;
  background-color: purple;
  padding: 10px;
}
 
.grid-container > div {
  background-color: yellowgreen;
  text-align: center;
  padding: 20px 0;
  font-size: 30px;
}
</style>
</head>
<body>
<div class="grid-container">
  <div class="item1">1</div>
  <div class="item2">2</div>
  <div class="item3">3</div>  
  <div class="item4">4</div>
  <div class="item5">5</div>
  <div class="item6">6</div>
</div>
</body>
</html>

Output

CSS āĻ grid āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ item āĻ—ā§āĻ˛ā§‹ row āĻ†āĻ•āĻžāĻ°ā§‡ āĻšāĻŦā§‡ āĻ¨āĻžāĻ•āĻŋ column āĻ†āĻ•āĻžāĻ°ā§‡ āĻšāĻŦā§‡, āĻ¤āĻž āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°āĻŦā§‡āĻ¨ ?

CSS āĻ grid āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ item āĻ—ā§āĻ˛ā§‹ row āĻ†āĻ•āĻžāĻ°ā§‡ āĻšāĻŦā§‡ āĻ¨āĻžāĻ•āĻŋ column āĻ†āĻ•āĻžāĻ°ā§‡ āĻšāĻŦā§‡ , āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖā§‡āĻ° āĻœāĻ¨ā§āĻ¯ css āĻ grid-auto-flow property āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻšāĻ˛ā§āĻ¨ āĻāĻ•āĻŸāĻž āĻ‰āĻĻāĻžāĻšāĻ°āĻŖā§‡ āĻŦā§āĻ¯āĻžāĻĒāĻžāĻ°āĻŸāĻž āĻŦā§āĻā§‡ āĻ¨ā§‡āĻ¯āĻŧāĻž āĻ¯āĻžāĻ•:

<!DOCTYPE html>
<html>
<head>
<style>
.grid-container {
  display: grid;
  grid-template-columns: auto auto auto;
  grid-template-rows: auto auto;
  grid-gap: 10px;
  background-color: chocolate;
  padding: 10px;
}
 
.grid-container > div {
  background-color: rgb(199,21,133);
  text-align: center;
  padding: 20px 0;
  font-size: 30px;
}
</style>
</head>
<body>
<p><strong>grid-auto-flow: column</strong></p>
<div class="grid-container" style="grid-auto-flow: column;">
  <div class="item1">1</div>
  <div class="item2">2</div>
  <div class="item3">3</div>
  <div class="item4">4</div>
</div>
 
<p><strong>grid-auto-flow: row</strong></p>
<div class="grid-container" style="grid-auto-flow: row;">
  <div class="item1">1</div>
  <div class="item2">2</div>
  <div class="item3">3</div>
  <div class="item4">4</div>
</div>
</body>
</html>

Output

grid āĻāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ column āĻāĻŦāĻ‚ row āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ Gap:

grid āĻāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ column āĻāĻŦāĻ‚ row āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ Gap āĻĻā§‡āĻ“āĻ¯āĻŧāĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻĒāĻ¨āĻŋ āĻ¯āĻĨāĻžāĻ•ā§āĻ°āĻŽā§‡ grid-column-gap āĻāĻŦāĻ‚ grid-row-gap āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨āĨ¤ āĻšāĻ˛ā§āĻ¨ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖā§‡ āĻĻā§‡āĻ–āĻž āĻ¯āĻžāĻ•:

Example: grid-column-gap Property

<!DOCTYPE html>
<html>
<head>
<style>
.grid-container {
  display: grid;
  grid-column-gap: 50px;
  grid-template-columns: auto auto auto;
  background-color: #2196F3;
  padding: 10px;
}
 
.grid-item {
  background-color: #D3EAFD;
  margin:5px;
  padding: 20px;
  font-size: 30px;
  text-align: center;
}
</style>
</head>
<body>
<div class="grid-container">
  <div class="grid-item">1</div>
  <div class="grid-item">2</div>
  <div class="grid-item">3</div>  
  <div class="grid-item">4</div>
  <div class="grid-item">5</div>
  <div class="grid-item">6</div>  
  <div class="grid-item">7</div>
  <div class="grid-item">8</div>
  <div class="grid-item">9</div>  
</div>
</body>
</html>

Output

Example: grid-row-gap Property

<!DOCTYPE html>
<html>
<head>
<style>
.grid-container {
  display: grid;
  grid-row-gap: 50px;
  grid-template-columns: auto auto auto;
  background-color: #2196F3;
  padding: 10px;
}
 
.grid-item {
  background-color: #D3EAFD;
  margin:5px;
  padding: 20px;
  font-size: 30px;
  text-align: center;
}
</style>
</head>
<body>
<div class="grid-container">
  <div class="grid-item">1</div>
  <div class="grid-item">2</div>
  <div class="grid-item">3</div>  
  <div class="grid-item">4</div>
  <div class="grid-item">5</div>
  <div class="grid-item">6</div>  
  <div class="grid-item">7</div>
  <div class="grid-item">8</div>
  <div class="grid-item">9</div>  
</div>
</body>
</html>

Output

CSS grid-row-gap, grid-column-gapāĻāĻ‡ āĻĻā§āĻŸāĻŋ property āĻāĻ° āĻ•ā§‹āĻ¨ā§‹ short-hand property āĻ†āĻ›ā§‡?

āĻœāĻŋ āĻ†āĻ›ā§‡ , āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ grid-gap property āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤ āĻ†āĻ° āĻāĻŸāĻžāĻ° syntax āĻšāĻšā§āĻ›ā§‡ āĻ āĻŋāĻ• āĻ¨āĻŋāĻšā§‡āĻ° āĻŽāĻ¤ā§‹ :

grid-gap: grid-row-gap / grid-column-gap;

āĻšāĻ˛ā§āĻ¨ āĻāĻ•āĻŸāĻž āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻĻā§‡āĻ–āĻž āĻ¯āĻžāĻ•:

<!DOCTYPE html>
<html>
<head>
<style>
.grid-container {
  display: grid;
  grid-gap:25px 50px;
  grid-template-columns: auto auto auto;
  background-color: #2196F3;
  padding: 10px;
}
 
.grid-item {
  background-color: #D3EAFD;
  margin:5px;
  padding: 20px;
  font-size: 30px;
  text-align: center;
}
</style>
</head>
<body>
<div class="grid-container">
  <div class="grid-item">1</div>
  <div class="grid-item">2</div>
  <div class="grid-item">3</div>  
  <div class="grid-item">4</div>
  <div class="grid-item">5</div>
  <div class="grid-item">6</div>  
  <div class="grid-item">7</div>
  <div class="grid-item">8</div>
  <div class="grid-item">9</div>  
</div>
</body>
</html>

Output

Leave A Reply

Your email address will not be published. Required fields are marked *