how to create a tab image gallery

<!DOCTYPE html>

<meta name="viewport" content="width=device-width, initial-scale=1">
* {
  box-sizing: border-box;

body {
  margin: 0;
  font-family: Arial;

/* The grid: Four equal columns that floats next to each other */
.column {
  float: left;
  width: 25%;
  padding: 10px;

/* Style the images inside the grid */
.column img {
  opacity: 0.8; 
  cursor: pointer; 

.column img:hover {
  opacity: 1;

/* Clear floats after the columns */
.row:after {
  content: "";
  display: table;
  clear: both;

/* The expanding image container */
.container {
  position: relative;
  display: none;

/* Expanding image text */
#imgtext {
  position: absolute;
  bottom: 15px;
  left: 15px;
  color: white;
  font-size: 20px;

/* Closable button inside the expanded image */
.closebtn {
  position: absolute;
  top: 10px;
  right: 15px;
  color: white;
  font-size: 35px;
  cursor: pointer;
 <!--use your own images-->
<div style="text-align:center">
  <h2>Tabbed Image Gallery</h2>
  <p>Click on the images below:</p>

<!-- The four columns -->
<div class="row">
  <div class="column">
    <img src="img_nature.jpg" alt="Nature" style="width:100%" onclick="myFunction(this);">
  <div class="column">
    <img src="img_snow.jpg" alt="Snow" style="width:100%" onclick="myFunction(this);">
  <div class="column">
    <img src="img_mountains.jpg" alt="Mountains" style="width:100%" onclick="myFunction(this);">
  <div class="column">
    <img src="img_lights.jpg" alt="Lights" style="width:100%" onclick="myFunction(this);">

<div class="container">
  <span onclick="'none'" class="closebtn">×</span>
  <img id="expandedImg" style="width:100%">
  <div id="imgtext"></div>

function myFunction(imgs) {
  var expandImg = document.getElementById("expandedImg");
  var imgText = document.getElementById("imgtext");
  expandImg.src = imgs.src;
  imgText.innerHTML = imgs.alt; = "block";