发表于: 2019-07-03 19:54:33

1 802


今天完成了什么:

完成任务第一个页面,添加了侧边栏;

遇到了什么问题:

花了时间整理了下任务的三个页面和类名;

侧边栏开始不会制作;后面看了下人家代码仔细分析了下写了小demo;

收获了什么:

侧边栏的制作;

<!DOCTYPE html>
<html>

<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
/*隐藏checked复选框*/
#sidemenu{
display: none;
}

#sidemenu:checked + aside {
/*为被选中的sidemenu后的aside设置属性(紧邻)*/
left: 0;
/*点击按钮即选中checked后,侧边栏位置变为贴着左边,配合ease-out使用,有渐变滑出的效果*/
}

#sidemenu:checked ~ #wrap {
/*为被选中的sidemenu后的wrap设置属性(非紧邻)*/
padding-left: 220px;
}

aside {
/*侧边栏,初始位置为-200px,即隐藏效果*/
position: absolute;
top: 0;
bottom: 0;
left: -200px;
width: 200px;
background: black;
transition: 0.2s ease-out;
/*动画效果的执行方式是ease-out,即侧边栏滑动效果为渐变式,而不是生硬的突然变化*/
}

h2 {
color: white;
text-align: center;
font-size: 2em;
}

/*控制侧边栏进出的按钮(外部包裹)*/
#wrap {
margin-left: 20px;
padding: 10px;
transition: 0.2s ease-out;
}

/*控制侧边栏进出的按钮(内部文字样式)*/
label {
/*控制侧边栏进出的按钮*/
background: white;
border-radius: 70px;
color: orange;
cursor: pointer;
display: block;
font-family: Courier New;
font-size: 2em;
width: 1.5em;
height: 1.5em;
line-height: 1.5em;
text-align: center;
display: inline-block;
}

label:hover {
background: #000;
}

#sideul li {
list-style: none;
color: white;
width: 100%;
height: 1.8em;
font-size: 1.5em;
text-align: center;
}

a {
text-decoration: none;
}

#sideul li:hover {
color: orange;
}
</style>
</head>

<body>
<input type='checkbox' id='sidemenu'>
<aside>
<h2>主菜单</h2>
<br />
<ul id="sideul">
<a href="##">
<li>首页</li>
</a>
<a href="##">
<li style="color: orange;">导航1</li>
</a>
<a href="##">
<li>导航2</li>
</a>
<a href="##">
<li>导航3</li>
</a>
<a href="##">
<li>导航4</li>
</a>
<a href="##">
<li>导航5</li>
</a>
<a href="##">
<li>导航6ʳ</li>
</a>
</ul>
</aside>
<div id='wrap'>
<label id='sideMenuControl' for='sidemenu'></label>
<!--for 属性规定 label 与哪个表单元素绑定,即将这个控制侧边栏进出的按钮与checkbox绑定-->
</div>

</body>

</html>

点击控件会弹出来;



常用的css命名规则有:

  • 头:header
  • 内容:content/container
  • 尾:footer
  • 导航:nav
  • 侧栏:sidebar
  • 栏目:column
  • 页面外围控制整体布局宽度:wrapper
  • 左右中:left right center
  • 登录条:loginbar
  • 标志:logo
  • 广告:banner
  • 页面主体:main
  • 热点:hot
  • 新闻:news
  • 下载:download
  • 子导航:subnav
  • 菜单:menu
  • 子菜单:submenu
  • 搜索:search
  • 友情链接:friendlink
  • 页脚:footer
  • 版权:copyright
  • 滚动:scroll
  • 内容:content
  • 标签页:tab
  • 文章列表:list
  • 提示信息:msg
  • 小技巧:tips
  • 栏目标题:title
  • 加入:joinus
  • 指南:guide
  • 服务:service
  • 注册:register
  • 状态:status
  • 投票:vote
  • 合作伙伴:partner

 

注释的写法:

/* Footer */

内容区

/* End Footer */

id的命名:

(1)页面结构

  • 容器: container
  • 页头:header
  • 内容:content/container
  • 页面主体:main
  • 页尾:footer
  • 导航:nav
  • 侧栏:sidebar
  • 栏目:column
  • 页面外围控制整体布局宽度:wrapper
  • 左右中:left right center

(2)导航

  • 导航:nav
  • 主导航:mainnav
  • 子导航:subnav
  • 顶导航:topnav
  • 边导航:sidebar
  • 左导航:leftsidebar
  • 右导航:rightsidebar
  • 菜单:menu
  • 子菜单:submenu
  • 标题: title
  • 摘要: summary

(3)功能

  • 标志:logo
  • 广告:banner
  • 登陆:login
  • 登录条:loginbar
  • 注册:regsiter
  • 搜索:search
  • 功能区:shop
  • 标题:title
  • 加入:joinus
  • 状态:status
  • 按钮:btn
  • 滚动:scroll
  • 标签页:tab
  • 文章列表:list
  • 提示信息:msg
  • 当前的: current
  • 小技巧:tips
  • 图标: icon
  • 注释:note
  • 指南:guide
  • 服务:service
  • 热点:hot
  • 新闻:news
  • 下载:download
  • 投票:vote
  • 合作伙伴:partner
  • 友情链接:link
  • 版权:copyright

class的命名:

(1)颜色:使用颜色的名称或者16进制代码,如

  • .red { color: red; }
  • .f60 { color: #f60; }
  • .ff8600 { color: #ff8600; }

(2)字体大小,直接使用”font+字体大小”作为名称,如

  • .font12px { font-size: 12px; }
  • .font9pt {font-size: 9pt; }

(3)对齐样式,使用对齐目标的英文名称,如

  • .left { float:left; }
  • .bottom { float:bottom; }

(4)标题栏样式,使用”类别+功能”的方式命名,如

  • .barnews { }
  • .barproduct { }

注意事项::

  1. 一律小写;
  2. 尽量用英文;
  3. 不加中杠和下划线;
  4. 尽量不缩写,除非一看就明白的单词.
  • 主要的 master.css
  • 模块 module.css
  • 基本共用 base.css
  • 布局,版面 layout.css
  • 主题 themes.css
  • 专栏 columns.css
  • 文字 font.css
  • 表单 forms.css
  • 补丁 mend.css
  • 打印 print.css

空格

以下几种情况不需要空格:

  • 属性名后
  • 多个规则的分隔符','前
  • !important '!'后
  • 属性值中'('后和')'前
  • 行末不要有多余的空格

以下几种情况需要空格:

  • 属性值前
  • 选择器'>', '+', '~'前后
  • '{'前
  • !important '!'前
  • @else 前后
  • 属性值中的','后
  • 注释'/'后和'/'前

  • 尽量遵循HTML标准和语义,但是不应该以浪费实用性作为代价;

    任何时候都要用尽量小的复杂度和尽量少的标签来解决问题。


明天计划:

继续写任务;


返回列表 返回列表
评论

    分享到