CSS伪类

伪类的定义是:添加一些选择器的特殊效果。
选择器常见的有:id,tag,class,属性[attr=attrval]等。我暂时还不懂这个伪类是什么意思,但是我们知道CSS是html网页的表现形式,所以这个伪类肯定也是和设置网页的效果有关。带着这样的念头我们继续学习。
伪类包括:状态伪类和结构伪类。

状态伪类

状态伪类是基于元素当前状态进行选择的。在与用户的交互过程中元素的状态是动态变化的,因此该元素会根据其状态呈现不同的样式。当元素处于某状态时会呈现该样式,而进入另一状态后,该样式也会失去。常见的状态伪类主要包括:

:link 应用于未被访问过的链接;:hover 应用于鼠标悬停到的元素;:active 应用于被激活的元素;:visited 应用于被访问过的链接,与:link互斥。:focus 应用于拥有键盘输入焦点的元素。

从状态伪类我们来理解一下伪类的定义,在设置每个元素属性的时候,通常我们的步骤是:元素名+{属性},但是遇到想要设置例如元素的状态,在被点击前后,悬停等,我们通过伪类来辅助,而不需要设置其他的选择器来设置,这样在我看来使得代码简洁了,查询资料获得的好处是:正确的利用伪元素和伪类能够让我们的html结构更清晰合理,也能在一定程度上减少js对dom的操作!之后再来理解吧。

结构性伪类

结构性伪类是css3新增选择器,利用dom树进行元素过滤,通过文档结构的互相关系来匹配元素,能够减少class和id属性的定义,使文档结构更简洁。顾名思义,结构性伪类,就是对于构成一个元素的结构中的子元素做设置属性,例如:first-child 选择某个元素的第一个子元素;常见的有:

:first-child 选择某个元素的第一个子元素;:last-child 选择某个元素的最后一个子元素;:nth-child() 选择某个元素的一个或多个特定的子元素;:nth-last-child() 选择某个元素的一个或多个特定的子元素,从这个元素的最后一个子元素开始算;:nth-of-type() 选择指定的元素;:nth-last-of-type() 选择指定的元素,从元素的最后一个开始计算;:first-of-type 选择一个上级元素下的第一个同类子元素;:last-of-type 选择一个上级元素的最后一个同类子元素;:only-child 选择的元素是它的父元素的唯一一个子元素;:only-of-type 选择一个元素是它的上级元素的唯一一个相同类型的子元素;:empty 选择的元素里面没有任何内容。

伪元素

伪元素是对元素中的特定内容进行操作,而不是描述状态。它的操作层次比伪类更深一层,因此动态性比伪类低很多。实际上,伪元素就是选取某些元素前面或后面这种普通选择器无法完成的工作。控制的内容和元素是相同的,但它本身是基于元素的抽象,并不存在于文档结构中!常见的伪元素选择器包括:

:first-letter 选择元素文本的第一个字(母)。:first-line 选择元素文本的第一行。:before 在元素内容的最前面添加新内容。:after 在元素内容的最后面添加新内容。

导航栏=链接列表

导航栏可以作为是用CSS做的实例来理解了,是一个网页最重要的部分了,我认为。导航栏就是链接列表,就是链接的集合。

创建垂直导航栏:

首先我们知道导航栏就是链接的集合,链接一般都是内联形式,所以第一步就需要将链接样式改成块元素,使得链接变成一块可点击链接的区域。其他的部分就是需要对以链接为元素的列表设置颜色等属性。

ul {list-style-type: none;margin: 0;padding: 0;width: 200px;background-color: #f1f1f1;
}li a {display: block;color: #000;padding: 8px 16px;text-decoration: none;
}/* 鼠标移动到选项上修改背景颜色 */
li a:hover {background-color: #555;color: white;
}

创建水平导航栏

通过上面的学习我们知道,导航栏就是链接作为列表的集合,而列表的li元素是块级元素,因此,如果我们要想实现水平的导航栏,我们需要将li的显示属性改成内联的,示例如下:

           ul{list-style-type: none;width: 100%;height: 30px;margin: 0;padding: 0;overflow: hidden;background-color: #969896;}li{float: left;}li a{display: block;color: #000000;text-align: center;padding: 10px 20px;text-decoration: none;}li a:hover{background-color: #00FFFF;}

CSS伪类布局菜单框学习+总结相关推荐

  1. 前端学习(219):css伪类选择器

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/ html4/str ...

  2. css修改select选择框option被选中的背景颜色_这 16 个 CSS 伪类,助你提升布局效率!

    作者:Chidume Nnamdi 译者:前端小智 来源:mediuum 大家都说简历没项目写,我就帮大家找了一个项目,还附赠[搭建教程]. css 伪类是用于向某些选择器添加特殊的效果,是动态的,指 ...

  3. 又一个布局利器, CSS 伪类 :placeholder-shown

    作者:Samantha Ming 译者:前端小智 来源:medium 点赞再看,微信搜索 [大迁世界] 关注这个没有大厂背景,但有着一股向上积极心态人.本文 GitHub https://github ...

  4. :empty css 可以用在哪些标签,CSS伪类:empty让我眼前一亮(实例代码)

    最近看过我文章的都知道:我最近在负责一个微信小程序的项目,在其中遇到了很多有趣的事和一些"奇思妙想".本文的背景就是某天早上我看着wxml文件中一堆wx:if/else和hidde ...

  5. php中的伪类选择器,css伪类选择器介绍

    伪类选择器: (推荐学习:css快速入门) 1.link.hover.active.visited a:link(未访问的链接状态),用于定义了常规的链接状态. a:hover(鼠标放在链接上的状态) ...

  6. html分为哪两种,css伪类分为哪几种

    css伪类分为UI伪类和结构化伪类两种.UI伪类分为链接伪类.focus伪类和target伪类.结构化伪类分为[:first-child].[:last-child]和[:nth-child]. CS ...

  7. html鼠标点击伪类,CSS伪类:CSS3鼠标滑过按钮动画

    前言 按钮,对开发者而言,是非常常见的一个功能.前端通常会对按钮加入一些操作交互样式,增加一些用户体验. 比如:hover样式.点击样式.loading样式等.下面我们通过简单示例在学习一下css3动 ...

  8. CSS 伪类选择器:如何使用 CSS3 伪类

    CSS 伪类选择器:如何使用 CSS3 伪类 CSS3 是个好东西,但也很容易被她的变形(transform)和动画(其中许多特性因浏览器厂商而异)特性所迷惑,因而忘了那些已经被添加到标准规范中的最为 ...

  9. 2天驾驭div+css_老婆竟然只知道几个css伪类,不行得惩罚她了

    最近在教我老婆学习前端,她说想要学习前端,自己在家赚点外快,自己赚点家用.我也拗不过她,而且其实我也挺佩服的.所以就教她了.最近我想考一考她对css中伪类的了解,所以就问了她了解css多少个伪类,伪类 ...

最新文章

  1. IDEA中将代码块封装为方法,IDEA代码重构快捷键
  2. 2018年计算机职称考试冲刺,2018年中级会计职称考试考前30天冲刺计划和学习方法...
  3. linux Makefile 中使用 shell命令
  4. DL之SoftmaxWithLoss:SoftmaxWithLoss算法(Softmax+交叉熵误差)简介、使用方法、应用案例之详细攻略
  5. linux kernel 三次握手建立TCP链接的实现
  6. DotNetTextBox V3.0 所见即所得编辑器控件 For Asp.Net2.0(ver 3.0.7Beta) 增加多语言!
  7. java chsftp.get 追加_Java SFTP上传使用JSch,但如何覆盖当前文件?
  8. Mybatis源码分析开篇
  9. 同频切换的事件_LTE前台路测切换问题处理大礼包
  10. 将一个js项目改造成vue项目
  11. 19个免费好用的CSS代码样式生成器工具
  12. eclipse 安装windows builder的问题及解决办法
  13. 当下主流的数据库及其特点
  14. Pytorch关于高维tensor的dim上操作的理解--以cosine_similarity的dim参数为例
  15. Paper:可解释性之ICE/PDP《Peeking Inside the Black Box: Visualizing Statisti窥视黑盒内部:用个体条件期望ICE图可视化统计学习》翻译与解读
  16. 电脑锁屏蓝牙鼠标断开_如何阻止蓝牙鼠标不断断开
  17. C#读取txt 乱码问题的解决方案
  18. UI设计电脑配置要求,UI设计笔记本可以吗?
  19. 罗氏将连续第四届参展进博会;全球首个基础胰岛素GLP-1RA注射液诺和益在中国获批 | 医药健闻...
  20. 疯狂的大柚柚带你玩转MSP-ESP430G2(基础篇)----(十三)比较器

热门文章

  1. 用牛顿迭代法求方程的实根
  2. [转] 上海老人杜月笙 教你看穿一个人
  3. 摩托罗拉移动遭谷歌“雪藏”:未来命运待解
  4. unique_lock与lock_guard区别
  5. 清华大学发布珠算:一个用于生成模型的Python库
  6. 演出商业怎么实施RPA虚拟员工提高计费效率
  7. linux ppa安装软件,Linux PPA:安装,删除和安全 | MOS86
  8. 坦克大战--chapter01
  9. 《缠中说禅108课》10:2005 年 6 月,本 ID 为何时隔四年后重看股票
  10. Cocos2d-x制作跳棋第四步:胜负判断、AI具体实现及实现特殊组合动作的小技巧