链接的状态

  • link 没有访问过的
  • visited 访问过的
  • hover 用户鼠标刚好停留在这个链接上时
  • focus 通过TAB键或者编程方法将一个链接选中时
  • active 链接被激活时
 

默认的链接样式

  • 链接具有下划线
  • link状态是蓝色的
  • visited状态是紫色的
  • hover状态时光标变成一个小手
  • active状态是红色的
  • focus状态,用tab键选中链接时,链接周围有一个轮廓
 

将样式应用到链接

  最好根据 link visited focus hover active 的顺序编写链接样式。
  可以用 LoVFears HAte 的顺序帮助记忆
 
link样式
color
 
visited样式
color
 
focus样式
border
background
outline
outline是绘制元素周围的一条线,位于边框的外围,不会占据元素空间,起到突出元素的作用,可以不是矩形。简写:color style width。
 
hover样式
border
background
 
active样式
color
background
 
示例:
body {
width: 300px;
margin: 0 auto;
font-size: 1.2rem;
font-family: sans-serif;
} p {
line-height: 1.4;
} a {
outline: none; /*取消focus状态的外围线*/
text-decoration: none; /*取消下划线*/
padding: 2px 1px 0; /*增加内边距,上2px,左右1px, 下0px*/
} a:link {
color: #265301;
} a:visited {
color: #437A16;
} a:focus {
border-bottom: 1px solid; /*设置下边框线*/
background: #BAE498; /*设置背景色*/
} a:hover {
border-bottom: 1px solid;
background: #CDFEAA;
} a:active {
background: #265301;
color: #CDFEAA;
}
 
 

在链接中包含图标

若要实现这样的效果,即外部链接旁边有一个带箭头的小图标。外部链接是不属于本站的链接,通常带有"http"开头。
那么可以根据以下样式编码:
a {
padding: 2px 1px 0;
}
a:link {}
a:visited {}
a:focus, a:hover {}
a:active {}
a[href*="http"] {
background: url('https://mdn.mozillademos.org/files/12982/external-link-52.png')
no-repeat 100% 0;
/*找到图标的地址,设为背景图像,并设置不重复,位置为右上角*/
background-size: 16px 16px; /*设置图标大小*/
padding-right: 19px; /*设置右侧内边距,为背景图片留出空间,不与文本重叠*/
}
属性选择器:a[href*="http"] 
即,选中 <a> 元素,但是只选中拥有 href 属性,且属性的值包含 "http" 的 <a>的元素。
 

样式化链接为按钮

示例:
HTML部分
<ul>
<li><a href="#">Home</a></li>
<li><a href="#">Pizza</a></li>
<li><a href="#">Music</a></li>
<li><a href="#">Wombats</a></li>
<li><a href="#">Finland</a></li>
</ul>

将多个链接置于一个列表中

 
CSS部分
body,html {
margin: 0;
font-family: sans-serif;
} ul {
padding: 0; /*取消内边距*/
width: 100%; /*设置列表宽度是外部容器(body)的100%*/
} li {
display: inline; /*将列表项设为内联元素,就不会换行*/
} a {
outline: none; /*取消focus的外围线*/
text-decoration: none; /*取消下划线*/
display: inline-block; /*链接设置为内联块,就可以不用换行而且自定义块大小*/
width: 19.5%;
margin-right: 0.625%;
text-align: center;
line-height: 3;
color: black;
} li:last-child a {
margin-right: 0;
/*
利用last-child选择器选择父元素中最后一个子元素,并且设置右侧外边距为0,
但是在edge浏览器中彷佛不能实现。
*/
} a:link, a:visited, a:focus {
background: yellow;
} a:hover {
background: orange;
} a:active {
background: red;
color: white;
}

CSS基础-链接的更多相关文章

  1. 前端开发:css基础知识之盒模型以及浮动布局。

    前端开发:css基础知识之盒模型以及浮动布局 前言 楼主的蛮多朋友最近都在学习html5,他们都会问到同一个问题 浮动是什么东西?  为什么这个浮动没有效果?  这个问题楼主已经回答了n遍.今天则是把 ...

  2. CSS基础总结

    CSS基础总结链接地址:http://segmentfault.com/a/1190000002773955

  3. HTML5 -入门 (---css样式-------------(css基础与css选择器)---------------------—)

    ---恢复内容开始--- 一css基础入门与css选择器 CSS英文全拼:cascading style sheet 层叠样式表. 在html中使用:要在head中写style标签,所有样式放在sty ...

  4. 妙味课堂——HTML+CSS基础笔记

    妙味课堂的课程讲得非常的清楚,受益匪浅.先把HTML和CSS基础课程部分视频的学习笔记记录如下: padding #PS基础 ##前端需要的PS技能 - PS技能(前端需要):切图.修图.测量 - P ...

  5. WEB前端开发CSS基础样式全面总结

    Web前端开发css基础样式全面总结 颜色和单位的使用 颜色 用颜色的名字表示颜色,比如:red 用16进制表示演示 比如:#FF0000 用rgb数值表示颜色,rgb(红,绿,蓝),每个值都在0-2 ...

  6. CSS基础(01)

    1. Css基础 1.1 CSS(层叠样式表 Multiple Styles)   CSS 是 Cascading Style Sheets(层叠样式表)的简称. CSS 语言是一种标记语言,它不需要 ...

  7. (转)第一天 XHTML CSS基础知识 文章出处:标准之路(http://www.aa25.cn/div_css/902.shtml)

    欢迎大家学习<十天学会web标准>,也就是我们常说的DIV+CSS.不过这里的DIV+CSS是一种错误的叫法,建议大家还是称之为web标准. 学习本系列教程需有一定html和css基础,也 ...

  8. CSS 基础总结

    CSS基础 Doctype 声明位于文档中的最前面,处于 标签之前.告知浏览器的解析器,用什么文档类型 规范来解析这个文档. 在标准模式中,浏览器根据规范呈现页面: 在混杂模式中,页面以一种比较宽松的 ...

  9. Form标签+Css基础

      一.Form表单标签 <form action="" method=""></form>    表单就是用来将用户的信息提交到服务器 ...

随机推荐

  1. 写博客真的很枯燥,更麻烦的是我还不会MD,排版太不友好了啊。

    学习MD 第一标题 #一号标题 ##二号标题 神马啊,博客园居然不支持MD语法

  2. Python arange

    原文来自DeniuHe.原文链接 >>> np.arange(3) array([0, 1, 2]) >>> np.arange(1,3,0.3) array([ ...

  3. gdb 符号表 &信息 &工具

    查看二进制文件的编译器版本 strings  info.o |grep GCCGCC: (crosstool-NG linaro-1.13.1-2012.02-20120222 - Linaro GC ...

  4. t分布与t检验的一点理解

    最近又遇到了t分布及t检验方面的内容,发现有些地方自己当初没有很明白,就又查了些资料,加深了一下自己的理解,这里也将自己的一些理解记录下来. 1. 理论基础--大数定理与中心极限定理        在 ...

  5. python之路《五》字符串的操作

    python的里的字符串的操作是可以说是最常见也是最实用的 我们通常使用双引号来表示字符串" "创建字符串很简单,定义一个变量就可以了 1 name = 'my name \t i ...

  6. MySQL全面瓦解12:连接查询的原理和应用

    概述 MySQL最强大的功能之一就是能在数据检索的执行中连接(join)表.大部分的单表数据查询并不能满足我们的需求,这时候我们就需要连接一个或者多个表,并通过一些条件过滤筛选出我们需要的数据. 了解 ...

  7. ERP应收应付进阶操作与子流程--开源软件诞生29

    赤龙ERP应收应付进阶讲解--第29篇 用日志记录"开源软件"的诞生 [进入地址 点亮星星]----祈盼着一个鼓励 博主开源地址: 码云:https://gitee.com/red ...

  8. guitar pro系列教程(二):Guitar Pro主界面之记谱功能的详细解析【下】

    本章节我们接着上一章节继续讲解关于guitar pro主界面的记谱功能里的符号功能.有兴趣的朋友可以进来一起学习哦. 首先我们看下图,这是点击按钮便会弹出的一个窗口,进入这个窗口,我们会看到" ...

  9. 理解与使用Treiber Stack

    目录 背景 名称由来 CompletableFuture源码实现 FutureTask实现 Treiber Stack抽象实现 入栈 出栈 示例 参考 背景 最近在很多JDK源码中都看到了Treibe ...

  10. WebsitePanel密码解密

    WebsitePanel是一套Windows系统中的虚拟主机管理系统,可以同时管理多台服务器. 通过反编译该系统的dll发现该系统的密码加密方式可逆. 解密流程 1,获取密钥 密钥保存在  Enter ...