实验原理
通过定义css样式,理解css属性以及页面真整体结构布局的方法及设计思想。
实验目的
理解并掌握多种css选择器的使用方法
理解并掌握后代选择器的作用及使用设计方法
理解并掌握伪类的作用、意义及使用方法
理解并掌握基于div容器页面布局的方法
理解并掌握页面整体结构布局的实现方法及设计思想
理解并掌握上导航、边侧栏的实现方法及设计思想
实验内容
创建maven Web项目及模块,experiment-03,项目打包类型为war
在src/main下,创建webapp目录
在webapp目录下,创建layout.html文件,基于给定HTML代码实现页面布局设计,允许添加class等属性引入css样式
需求+设计提示
为各部分区域设计统一样式;全局取消元素内外边距,按box尺寸计算
需求0
基于当前HTML代码,按12栅格布局页面。
Container根容器居中最大宽度960px
Row弹性行容器
header/footer各占1行12列
main中sidebar占3列;article占9列。
上导航+1
header中声明上导航,添加背景色/悬浮字体颜色等样式,且将logout推至最右侧
页脚+1
元素居中
左侧边栏+1
为左侧边栏添加样式,添加背景色/字体色/悬浮等等样式
运行显示结果
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><style>* {margin: 0;padding: 0;box-sizing: border-box;}.container{max-width: 960px;margin: 0 auto;}.row {display: flex;align-items: flex-start;}.area{background: plum;border-radius: 5px;border: 3px solid mediumpurple;padding: 10px;}.col-md-12 {flex: 0 0 100%;/*flex: 0 0 100% 是一个缩写属性,它包含了三个子属性:flex-grow, flex-shrink 和 flex-basis。它们分别控制了弹性项目的放大比例,缩小比例和基准大小。*/}.col-md-9 {flex: 0 0 75%;}.col-md-3 {flex: 0 0 25%;}.nav {list-style: none;display: flex;}.nav li a {display: block;padding: 15px 25px;text-decoration: none;justify-content: space-between;color: white;background-color: mediumorchid;}.nav a:hover {background-color: magenta;cursor: url(https://dl.zhutix.net/2023/04/170332.png),auto;}.nav .right {margin-left: auto;}.sidebar {min-width: 200px;}.sidebar-group {background: gainsboro;}.sidebar-group > ul {list-style: none;}.sidebar-group > h2 {background: dodgerblue;color: white;padding: 10px 20px;}.sidebar-group a{display: block;color: black;text-decoration: none;padding: 10px 20px;opacity: 0.8;transition: transform 0.5s;}.sidebar-group a:hover{background: darkgrey;color: white;opacity: 1;transform: scale(1.1);cursor: url(https://dl.zhutix.net/2023/04/170344.png),auto;}.footer p {font-family: 宋体,serif;text-align: center;}</style>
</head>
<body>
<div class="container"><!-- header --><div class="area row"><div class="col-md-12"><ul class="nav"><li><a href="#">Home</a></li><li><a href="#">News</a></li><li><a href="#">Contact</a></li><li><a href="#">About</a></li><li class="right"><a href="#">Logout</a></li></ul></div></div><!-- main --><div class="area row"><!-- sidebar --><div class="area col-md-3 sidebar"><div class="sidebar-group"><h2>云技术管理</h2><ul><li><a href="#">云服务器</a></li><li><a href="#">云数据库</a></li><li><a href="#">负载均衡</a></li></ul></div><div class="sidebar-group"><h2>安全管理</h2><ul><li><a href="#">云盾控制台</a></li><li><a href="#">DDoS高防IP</a></li><li><a href="#">Web应用防火墙</a></li><li><a href="#">CA证书服务</a></li></ul></div></div><!-- article --><div class="area col-md-9"><h1>设计内容</h1><p>为各部分区域设计统一样式;全局取消元素内外边距,按box尺寸计算</p><h3>需求0</h3><p>基于当前HTML代码,按12栅格布局页面。Container根容器居中最大宽度960px;Row弹性行容器;header/footer各占1行12列;main中sidebar占3列;article占9列。</p><h3>上导航+1</h3><p>header中声明上导航,添加背景色/悬浮字体颜色等样式,且将logout推至最右侧</p><h3>页脚+1</h3><p>元素居中</p><h3>左侧边栏+1</h3><p>为左侧边栏添加样式,添加背景色/字体色/悬浮等等样式</p></div></div><!-- footer --><div class="area row"><div class="col-md-12 footer"><p>东北林业大学<br>软件工程专业 2046©</p></div></div>
</div>
</body>
</html>