在前端界面的设计时,经常要用到css的布局属性,这里主要对flex、gird做一些学习上的总结,flex和grid都是CSS布局模块,允许响应式和灵活的设计。但是,它们具有不同的用例和属性。
flex主要用于一维布局,例如在行或列中排列项目。它在容器元素上使用display: flex属性,在子元素上使用flex属性来控制它们的大小和位置。一些关键属性包括:
例子:
<nav>
<ul style="display: flex; justify-content: space-between;">
<li><a href="#">Home</a></li>
<li><a href="#">About</a></li>
<li><a href="#">Contact</a></li>
</ul>
</nav>
grid用于二维布局,例如创建行和列的网格。它在容器元素上使用display: grid属性,在子元素上使用grid属性来控制它们的位置和大小。一些关键属性包括:
一个简单的例子:
<div style="display: grid; grid-template-columns: repeat(3, 1fr); grid-gap: 20px;">
<img src="https://suiyan.cc/assets/images/avatar.jpg">
<img src="https://suiyan.cc/assets/images/avatar.jpg">
<img src="https://suiyan.cc/assets/images/avatar.jpg">
<img src="https://suiyan.cc/assets/images/avatar.jpg">
<img src="https://suiyan.cc/assets/images/avatar.jpg">
<img src="https://suiyan.cc/assets/images/avatar.jpg">
</div>
总之,flex最适合一维布局,例如导航,瀑布流等,而grid最适合二维布局,比如站点的总体布局,数据表格布局等。但是,它们也可以一起使用以创建更复杂的布局。