效果如下图
以下是html css代码
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>分页样式代码</title> </head> <body> <style> .zzsc { margin: 5px auto; width: 100%; display: flex; align-items: center; justify-content: center; } .page > a { float: left; padding: 5px 10px; cursor: pointer; user-select: none; text-decoration: none; color: black; } .page .pageItem { border: solid thin #DDDDDD; margin: 5px; } .page .pageItemActive { border: solid thin #0099FF; margin: 5px; background-color: #0099FF; color: white; } .page .pageItem:hover { border: solid thin #0099FF; background-color: #0099FF; color: white; } .page .pageItemDisable { border: solid thin #DDDDDD; margin: 5px; background-color: #DDDDDD; } </style> <div> <div> <a>首页</a> <a><上一页</a> <a>1</a> <a href="./KM?pId=2979328&index=2">2</a> <a href="./KM?pId=2979328&index=3">3</a> <a href="./KM?pId=2979328&index=4">4</a> <a href="./KM?pId=2979328&index=5">5</a> <a href="./KM?pId=2979328&index=2">下一页></a> <a href="./KM?pId=2979328&index=9">尾页</a> </div> </div> </body> </html>
下面是C#构建Html的方法
/// <summary> /// 构建html分页 /// </summary> /// <param name="pId">url参数</param> /// <param name="pageIndex">第几页</param> /// <param name="pageCount">总共多少页</param> /// <param name="pageShowMax">展示多少页</param> /// <returns></returns> public string BuildPageHtml(int pId, int pageIndex, int pageCount, int pageShowMax = 5) { StringBuilder sb = new StringBuilder(); sb.AppendLine("<div class=\"zzsc\">"); sb.AppendLine("<div class=\"page\">"); if (pageIndex <= 1) { pageIndex = 1; sb.AppendLine("<a class=\"pageItemDisable\">首页</a>"); sb.AppendLine("<a class=\"pageItemDisable\"><上一页</a>"); } else { sb.AppendLine($"<a class=\"pageItem\" href=\"./KM?pId={pId}&index=1\">首页</a>"); sb.AppendLine($"<a class=\"pageItem\" href=\"./KM?pId={pId}&index={pageIndex - 1}\"><上一页</a>"); } if (pageCount <= pageShowMax) { for (int i = 1; i <= pageCount; i++) { if (i == pageIndex) { sb.AppendLine($"<a class=\"pageItemActive\">{i}</a>"); } else { sb.AppendLine($"<a class=\"pageItem\" href=\"./KM?pId={pId}&index={i}\">{i}</a>"); } } } else { int pageShowStart = 1; if (pageIndex - Math.Ceiling(pageShowMax / 2.0) > 0) { pageShowStart = pageIndex - (int)Math.Ceiling(pageShowMax / 2.0) + 1; if (pageCount - pageShowStart - pageShowMax + 1 < 0) { pageShowStart = pageCount - pageShowMax + 1; } } for (int i = pageShowStart; i < pageShowStart + pageShowMax; i++) { if (i == pageIndex) { sb.AppendLine($"<a class=\"pageItemActive\">{i}</a>"); } else { sb.AppendLine($"<a class=\"pageItem\" href=\"./KM?pId={pId}&index={i}\">{i}</a>"); } } } if (pageIndex >= pageCount) { sb.AppendLine("<a class=\"pageItemDisable\">下一页></a>"); sb.AppendLine("<a class=\"pageItemDisable\">尾页</a>"); } else { sb.AppendLine($"<a class=\"pageItem\" href=\"./KM?pId={pId}&index={pageIndex + 1}\">下一页></a>"); sb.AppendLine($"<a class=\"pageItem\" href=\"./KM?pId={pId}&index={pageCount}\">尾页</a>"); } sb.AppendLine("</div></div>"); return sb.ToString(); }
本文来自 www.luofenming.com