博客列表 >HTML常用元素样式、定位学习与应用

HTML常用元素样式、定位学习与应用

暮光薄凉
暮光薄凉原创
2021年10月02日 20:55:39699浏览

1.常用样式

  1. /*列表样式*/
  2. list-style-type: disc;/*小黑点样式*/
  3. list-style-position: inside;/*控制小黑点位置*/
  4. list-style-image: url();/*把小黑点替换成图片样式*/
  5. list-style: none;/*去掉小黑点*/
  6. /*表格样式、字体样式*/
  7. border-collapse: collapse;/*折叠表格边框线*/
  8. text-align: center;/*文本放心水平居中*/
  9. font-weight: 600;/*加粗字体*/
  10. z-index: 999;/*层级控制样式*/
  1. /*flex弹性盒子布局样式*/
  2. display: flex;/*将元素转为弹性盒子*/
  3. flex-direction: row;/*水平分布*/
  4. flex-direction: column;/*垂直分布*/
  5. flex-wrap: nowrap;/*不允许项目换行*/
  6. flex-wrap: wrap;/*允许项目换行*/
  7. flex-flow: row nowrap;/*简写:水平/垂直 是否允许换行*/
  8. place-content: start;/*靠起始边对齐(左边)*/
  9. place-content: end;/*靠终止边对齐(右边)*/
  10. place-content: center;/*居中对齐*/
  11. /*水平方向,有剩余空间*/
  12. place-content: space-between;/*两端对齐*/
  13. place-content: space-around;/*分散对齐*/
  14. place-content: space-evenly;/*平均对齐*/
  15. /*垂直方向*/
  16. place-items: start;/*靠着起始边对齐*/
  17. place-items: end;/*靠着终止边对齐*/
  18. place-items: center;/*居中对齐*/
  19. /*项目属性*/
  20. flex-grow: 0;/*0为禁止放大,1为允许放大 */
  21. flex-shrink: 0;/*0为禁止缩小,1为允许缩小 */
  22. flex-basis: auto;/*项目宽度*/
  23. flex: 0 1 auto;/*是否允许放大 是否允许缩小 宽度*/
  24. flex: inherit;/*默认值*/
  25. flex: auto;/*响应式缩放*/
  26. flex: none;/*禁止放大缩小*/
  27. order: 3;/*控制项目的排列顺序,默认为0*/
  1. /*grid布局样式*/
  2. display: grid;/*转为grid容器*/
  3. grid-template-columns: 10em 10em 10em;/*控制项目列宽,分别为几(3)列多(10em)宽*/
  4. grid-template-columns: repeat(3,10em);/*控制项目列宽,分别为几(3)列多(10em)宽*/
  5. grid-template-rows:10em 10em;/*控制项目行高,分别为几(3)行多(10em)高*/
  6. grid-template-rows: repeat(2,10em);/*控制项目行高,分别为几(3)行多(10em)高*/
  7. /*fr计量单位,按比例划分,跟百分百类似*/
  8. /*隐式单元格既未被分配的那部分单元格*/
  9. grid-auto-flow: row;/*隐式单元格中的排列方式,row水平,column列排列*/
  10. grid-auto-rows: 1fr;/*隐式单元格行高*/
  11. /*控制项目空间的对齐方式*/
  12. place-items: start start;/*对齐样式:垂直方向 水平方向*/
  13. /*start:靠上 靠左 ; end:靠下 靠右 ;center:居中*/
  14. /*控制剩余空间的对齐方式*/
  15. place-content:start start;/*对齐样式:垂直方向 水平方向*/
  16. /*start:靠上 靠左 ; end:靠下 靠右 ;center:居中*/
  17. place-content: space-between;/*两端对齐*/
  18. place-content: space-around;/*分散对齐*/
  19. place-content: space-evenly;/*平均对齐*/
  20. /*控制项目的排列顺序*/
  21. grid-column-start: span 3;/*span 跨越几行几列*/
  22. grid-column-start: 1/3;/*起始1/结束4*/
  23. grid-column-start: 1/span 3;/*起始1/跨域3*/
  24. grid-column-start: 3;/*起始列*/
  25. grid-column-end: 3;/*结束列*/
  26. grid-row-start: 3;/*起始行*/
  27. grid-row-end: 3;/*结束行*/
  28. /*grid-area: 行开始/列开始/行介绍/列结束;*/
  29. grid-area: 1/4/1/2;

表格样式应用实例

  1. /*css*/
  2. <style>
  3. table{border-collapse: collapse;}
  4. table thead{background: rgb(204, 203, 203);}
  5. table caption{font-weight: 700;margin-bottom: 10px;}
  6. td,th{border: 1px solid #777;width: 5rem;text-align: center;}
  7. </style>
  8. /*html*/
  9. <table class="student">
  10. <caption>这是一个学生信息管理表</caption>
  11. <thead>
  12. <tr>
  13. <th>序号</th>
  14. <th>姓名</th>
  15. <th>性别</th>
  16. <th>出生年月</th>
  17. <th>家庭住址</th>
  18. <th>专业</th>
  19. <th>班级</th>
  20. </tr>
  21. </thead>
  22. <tbody>
  23. <tr>
  24. <td>1</td>
  25. <td>张三</td>
  26. <td></td>
  27. <td>2002/2/4</td>
  28. <td>广州</td>
  29. <td>商务英语</td>
  30. <td>1021</td>
  31. </tr>
  32. <tr>
  33. <td>2</td>
  34. <td>张三</td>
  35. <td></td>
  36. <td>2002/2/4</td>
  37. <td>广州</td>
  38. <td>商务英语</td>
  39. <td>1021</td>
  40. </tr>
  41. <tr>
  42. <td>3</td>
  43. <td>张三</td>
  44. <td></td>
  45. <td>2002/2/4</td>
  46. <td>广州</td>
  47. <td>商务英语</td>
  48. <td>1021</td>
  49. </tr>
  50. <tr>
  51. <td>4</td>
  52. <td>张三</td>
  53. <td></td>
  54. <td>2002/2/4</td>
  55. <td>广州</td>
  56. <td>商务英语</td>
  57. <td>1021</td>
  58. </tr>
  59. </tbody>
  60. <tfoot>
  61. <tr>
  62. <td colspan="7">这是一个表尾</td>
  63. </tr>
  64. </tfoot>
  65. </table>

2.元素定位

1.静态定位
—分为相对定位、绝对定位
—根据HTML文档书写顺序,由浏览器控制。
—当一个元素使用非static的定位属性,则这个元素转换为“定位元素”,受用户的控制,而非浏览器控制。

  1. position: static;/*默认静态定位*/
  2. position: relative;/*相对定位,相对于元素的原始位置进行偏移*/
  3. position: absolute;/*决定定位,相对于离它最近的定位元素进行定位*/
  4. position: sticky;/*粘性定位*/
  5. position: fixed;/*固定定位*/

粘性定位与绝对定位应用:

  1. <style>
  2. .new{height: 300px;overflow: scroll;border: 1px solid #777;}
  3. .Rednews{background: rgb(163, 6, 6);color: rgb(255, 255, 255);position: sticky;top: 0;}
  4. .homenews{background: rgb(170, 170, 170);color: rgb(19, 46, 167);position: sticky;top: 0;}
  5. .new a img{width: 5em;border-radius: 50%;position: fixed;right: 2em;top: 10em;z-index: 999;}
  6. </style>
  7. <div class="new">
  8. <a href=""><img src="../03.jpg" alt=""></a>
  9. <h3 class="Rednews">推荐新闻</h3>
  10. <ul>
  11. <li><a href="">习近平:加快建设世界重要人才中心和创新高地</a></li>
  12. <li><a href="">向人民英雄敬献花篮仪式9月30日上午举行 习近平将出席</a></li>
  13. <li><a href="">全面小康是全体人民的小康 | 全面小康是全面发展的小康</a></li>
  14. <li><a href="">续写奥运精彩 全运会完美收官</a></li>
  15. <li><a href="">弘扬伟大抗洪精神 凝聚中国力量</a></li>
  16. <li><a href="">大湾区之声热评:祖国的坚强后盾是香港经济发展的最大底气</a></li>
  17. <li><a href="">孟晚舟事件解决背后 外交部透露更多细节</a></li>
  18. <li><a href="">外媒:美军驻伊拉克基地疑似起火 现场黑烟冲天</a></li>
  19. <li><a href="">大湾区之声热评:祖国的坚强后盾是香港经济发展的最大底气</a></li>
  20. <li><a href="">孟晚舟事件解决背后 外交部透露更多细节</a></li>
  21. <li><a href="">外媒:美军驻伊拉克基地疑似起火 现场黑烟冲天</a></li>
  22. </ul>
  23. <h3 class="homenews">国内新闻</h3>
  24. <ul>
  25. <li><a href="">戏剧性一幕 波兰球员被铲倒后翻身掏出补给品吃</a></li>
  26. <li><a href="">公司管理人员嘲笑中国口音 普华永道CEO道歉</a></li>
  27. <li><a href="">河南醉汉闯进小学打校长反被打掉3颗牙 双双被刑拘</a></li>
  28. <li><a href="">男子冒充民警到宾馆“检查” 把服务员带走后强奸</a></li>
  29. <li><a href="">黑龙江一建设局出纳挪用贷款藏身寺庙16年 种菜打杂为生</a></li>
  30. <li><a href="">“佛媛”之后再现“病媛”:精致的住院照 生病不忘化妆?</a></li>
  31. <li><a href="">教授谈捐1亿奖励:我和家人花是浪费 和夫人商量做出决定</a></li>
  32. <li><a href="">清华大学AI虚拟学生“华智冰”首次出镜 入学计算机系</a></li>
  33. <li><a href="">大湾区之声热评:祖国的坚强后盾是香港经济发展的最大底气</a></li>
  34. <li><a href="">孟晚舟事件解决背后 外交部透露更多细节</a></li>
  35. <li><a href="">外媒:美军驻伊拉克基地疑似起火 现场黑烟冲天</a></li>
  36. </ul>
  37. </div>

粘性定位应用:
—实现标题随着滚动条移动,始终黏在顶部
粘性定位应用
绝对定位应用:
—实现右侧图片随着滚动条移动,始终固定在一个位置
绝对定位应用

登录案例:

—效果:点击登录按钮弹出登录输入框及遮罩,点击页面隐藏登录框,并且登录框固定在浏览器中间

—思路:
1.先写好登录基本样式、布局
2.使用position: relative;将模态框(包裹登录及遮罩的div)转为定位元素
3.使用position: fixed;元素将登录表单固定在浏览器中间,距离使用left、right、top进行控制
4.使用position: fixed;元素遮罩覆盖浏览器可视区域,距离使用left、right、top、bottom进行控制
5.使用display: none;隐藏模态框
6.使用js点击事件控制模态框的显隐
控制模态框显示:onclick=”document.querySelector(‘.biankuang’).style.display=’block’”
控制模态框隐藏:onclick=”document.querySelector(‘.biankuang’).style.display=’none’”

  1. /*css*/
  2. <style>
  3. .mode{margin: 0;padding: 0;}
  4. .mode-top{background: silver;padding: 0.5em 0.5em;display: flex;}
  5. .mode-top button{margin-left:auto ;width: 4em;}
  6. .biankuang{position: relative;display: none;}
  7. .biankuang-biaodan{
  8. position: fixed;
  9. border: 1px solid rgb(250, 250, 250);
  10. display:grid;
  11. gap:1em;
  12. left: 20em;
  13. right: 20em;
  14. top: 10em;
  15. bottom: 20em;
  16. background: rgb(255, 255, 255);
  17. }
  18. .biankuang-zhezhao{
  19. background: rgba(119, 119, 119, 0.534);
  20. position: fixed;
  21. top: 0;
  22. left: 0;
  23. right: 0;
  24. bottom: 0;
  25. }
  26. </style>
  27. /*html*/
  28. <div class="mode">
  29. <div class="mode-top">
  30. <h3>登录</h3>
  31. <button onclick="document.querySelector('.biankuang').style.display='block'">登录</button>
  32. </div>
  33. <div class="biankuang" onclick="document.querySelector('.biankuang').style.display='none'">
  34. <div class="biankuang-zhezhao"></div>
  35. <div class="biankuang-biaodan">
  36. <form action="" >
  37. <input type="text" placeholder="请输入账号">
  38. <input type="text" placeholder="请输入密码">
  39. <button>登录</button>
  40. </form>
  41. </div>
  42. </div>
  43. </div>

grid圣杯布局及导航栏应用

  1. /*css*/
  2. <style>
  3. body *{background: #777;}
  4. body{
  5. display: grid;
  6. gap: 0.5em;
  7. grid-template-columns: 10em 30em 10em;
  8. grid-template-rows: 3em minmax(600px,auto) 3em;
  9. place-content: center;
  10. }
  11. footer{grid-column-end: span 3;}
  12. header{grid-column-start: span 3;}
  13. .daohang{
  14. display: grid;
  15. grid-template-rows: repeat(1,2em);
  16. grid-template-columns: repeat(5,5em);
  17. place-content:center ;
  18. list-style: none;
  19. text-align: center;
  20. background: chartreuse;
  21. margin: 0;
  22. }
  23. .daohang,.daohang > li,.daohang > li a {
  24. background: black;
  25. color: #ffffff;
  26. place-items: center;
  27. }
  28. </style>
  29. /*html*/
  30. <header>页眉
  31. <ul class="daohang">
  32. <li><a href="">首页</a></li>
  33. <li><a href="">关于我们</a></li>
  34. <li><a href="">产品中心</a></li>
  35. <li><a href="">在线留言</a></li>
  36. <li><a href="">联系我们</a></li>
  37. </ul>
  38. </header>
  39. <aside>左侧</aside>
  40. <main>内容区</main>
  41. <aside>右侧</aside>
  42. <footer>页脚</footer>

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议