新闻列表页flex_使用css3的Flex布局实现列表展示

实现效果图如下:

通过css3样式实现(部分代码):

.box{display:flex;flex-wrap:wrap;justify-content:space-between;align-content:flex-start;

}

在实际中会遇到list列表对3取余剩2的情况,页面就不是我们想要的了

我们想实现的是最后的一个靠左,这时候需要借助一个盒子,内容为空,边框颜色为背景色,代码如下:

.foodie-right-li-block{border-color:#f6f7f7;

}

需要注意的是,在list对3取余剩1和0的时候是不需要的,因此需要添加判断

结果如下:

好啦,到这里就结束了

如果想实现每行显示4个label发现这个方法不好使了,其实还是能够套用的,更改取余就好啦,代码如下:

说明:

1. class_fixed_new为list列表

2.因为余数为1和4的时候是不需要增加额外的盒子来辅助布局,隐藏通过v-if来现在,不加也可以,但是得加余数为0的判断

3.实现发布朋友圈的照片列表展示

话不多说,直接上码

+

data() {return{

imgsList: [0,1]

}

},

}

// 图片

.release-imgs{width:100%;display:flex;flex-wrap:wrap;justify-content:space-between;align-content:flex-start;.release-imgs-li {

width:220upx;height:220upx;background:goldenrod;margin-bottom:15upx;

}.release-imgs-li-add{background:#c9caca;font-size:100upx;line-height:200upx;text-align:center;

}.release-imgs-li-block{background:#eee;

}}

如果list的长度是1,4,7,那么需要一个额外的盒子

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用 `div` 元素来实现校园新闻页面布局。以下是一个简单的示例: HTML 代码: ```html <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>校园新闻</title> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body> <div class="header"> <h1>校园新闻</h1> <ul class="nav"> <li><a href="#">首页</a></li> <li><a href="#">校园新闻</a></li> <li><a href="#">教学科研</a></li> <li><a href="#">招生就业</a></li> <li><a href="#">校园文化</a></li> <li><a href="#">联系我们</a></li> </ul> </div> <div class="content"> <div class="main"> <h2>校园新闻</h2> <ul class="news-list"> <li> <a href="#"> <img src="news1.jpg"> <h3>新闻标题1</h3> <p>新闻摘要1</p> </a> </li> <li> <a href="#"> <img src="news2.jpg"> <h3>新闻标题2</h3> <p>新闻摘要2</p> </a> </li> <li> <a href="#"> <img src="news3.jpg"> <h3>新闻标题3</h3> <p>新闻摘要3</p> </a> </li> </ul> </div> <div class="sidebar"> <h3>热门新闻</h3> <ul> <li><a href="#">新闻1</a></li> <li><a href="#">新闻2</a></li> <li><a href="#">新闻3</a></li> <li><a href="#">新闻4</a></li> </ul> </div> </div> <div class="footer"> <p>版权所有 © 2021 校园新闻</p> </div> </body> </html> ``` CSS 代码: ```css /* 全局样式 */ body { margin: 0; padding: 0; font-family: Arial, sans-serif; } /* 头部样式 */ .header { background-color: #2c3e50; color: #fff; padding: 10px; } .header h1 { margin: 0; } .nav { list-style: none; margin: 0; padding: 0; display: flex; } .nav li { margin-right: 10px; } .nav li a { color: #fff; text-decoration: none; } /* 内容样式 */ .content { display: flex; flex-wrap: wrap; } .main { flex: 2; padding: 10px; } .main h2 { margin: 0; } .news-list { list-style: none; margin: 0; padding: 0; } .news-list li { margin-bottom: 20px; } .news-list li a { display: block; border: 1px solid #ccc; padding: 10px; text-decoration: none; color: #333; } .news-list li a:hover { background-color: #f1f1f1; } .news-list li img { float: left; margin-right: 10px; max-width: 100px; } .news-list li h3 { margin: 0; font-size: 18px; } .news-list li p { margin: 0; color: #666; } .sidebar { flex: 1; background-color: #f2f2f2; padding: 10px; } .sidebar h3 { margin: 0; } .sidebar ul { list-style: none; margin: 0; padding: 0; } .sidebar li { margin-bottom: 5px; } .sidebar li a { color: #333; text-decoration: none; } /* 底部样式 */ .footer { background-color: #f2f2f2; padding: 10px; text-align: center; } ``` 在上面的示例中,我们使用了 `div` 元素来分别表示头部、主要内容和底部。其中,头部包含了网站的标题和导航栏;主要内容分为左右两栏,左侧为新闻列表,右侧为热门新闻列表;底部包含版权信息。通过 CSS 样式的调整,可以实现不同的布局效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值