The class grid grid-cols-[200px_1fr_200px] sets a grid with three columns where the side columns are fixed at 200px and the center column takes the remaining space. This matches the Holy Grail layout structure.
Option D creates three equal columns, not fixed sidebars.
Option D uses flexbox but does not fix sidebar widths.
Option D fixes the middle column, not the sidebars.
The class sticky top-0 z-10 makes the element stick to the top of the viewport with a higher stacking order.
Option A fixes the element at the bottom, not top.
Option A positions absolutely but does not stick on scroll.
Option A is default positioning with no stickiness.
CSS Grid lets you define both rows and columns, which is perfect for the Holy Grail layout's 3-column and multiple-row structure.
Flexbox is mainly for 1D layouts (row or column), so it is less precise for this.
Option C is incorrect because Flexbox does not fix widths automatically.
Option C is false; Grid is widely supported.
Option C is false; Flexbox can create multi-column layouts but less efficiently.
<div class="grid grid-cols-[150px_1fr_150px] min-h-screen"> <nav class="bg-blue-500">Left Sidebar</nav> <main class="bg-white">Main Content</main> <aside class="bg-green-500">Right Sidebar</aside> </div>
The grid columns are set to 150px fixed width for sidebars and flexible center. The sidebars have distinct background colors, so they appear on left and right with fixed width, and main content fills center.
Option B is wrong because columns are not equal width.
Option B is wrong because grid creates columns, not vertical stack.
Option B is wrong because sidebars are visible.
Using semantic elements like <header>, <nav>, <main>, <aside>, and <footer> with their respective ARIA roles improves screen reader navigation.
Option A uses generic div elements which are less semantic.
Options C and D use less appropriate elements for these roles.