How to create: list grid view
- Previous Page Extended Grid
- Next Page Mixed Column Layout
How to create list grid view.
Click the button to select list view or grid view.
Column 1
Some text...
Column 2
Some text...
Column 3
Some text...
Column 4
Some text...
List Grid View
Step 1 - Add HTML:
<!-- Loading Font Awesome icon library --> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"> <!-- Used for buttons to select list view or grid view --> <button onclick="listView()"><i class="fa fa-bars"></i> List</button> <button onclick="gridView()"><i class="fa fa-th-large"></i> Grid</button> <div class="row"> <div class="column" style="background-color:#aaa;"> <h2>Column 1</h2> <p>Some text..</p> </div> <div class="column" style="background-color:#bbb;"> <h2>Column 2</h2> <p>Some text..</p> </div> </div> <div class="row"> <div class="column" style="background-color:#ccc;"> <h2>Column 3</h2> <p>Some text..</p> </div> <div class="column" style="background-color:#ddd;"> <h2>Column 4</h2> <p>Some text..</p> </div> </div>
Second step - Add CSS:
/* Create two equal-width columns that float together */ .column { float: left; width: 50%; padding: 10px; } /* Clear float after columns */ .row:after { content: ""; display: table; clear: both; }
Third step - Add JavaScript:
// Get elements with class="column" var elements = document.getElementsByClassName("column"); // Declare a loop variable var i; // List view function listView() { for (i = 0; i < elements.length; i++) { elements[i].style.width = "100%"; // Set the width of each element to 100% } } // Grid view function gridView() { for (i = 0; i < elements.length; i++) { elements[i].style.width = "50%"; // Set the width of each element to 50% } }
- Previous Page Extended Grid
- Next Page Mixed Column Layout