前端学习随笔4 背景,边框,列表样式,链接样式

一 心得体会

前面学习了HTML元素构建网页结构,学习了css文字属性和文本属性,今天在页面修饰方面更进一步,学习到了背景、边框、列表、链接这些方面的样式设置,发现了一些以前遗漏的知识点,比如背景样式中的background-attachment属性,这个以前基本没用到,看了之后觉得效果还是可以的,再今后的页面中可以使用到。最大的收获还是image的使用,突然发现image还可以用到边框、文本甚至列表中,觉得很神奇了,这个可以单独写一篇学习笔记了。

二相关知识点

1 背景(background)

要了解背景应用,我们需要先搞清楚盒模型。盒模型分为标准盒模型和怪异盒模型(ie盒模型)。

  1. 标准盒模型中width/height为内容的宽/高,盒子总宽度/高度=width/height+padding+border+margin。
  2. 怪异盒模型中width/height为内容+padding+border的宽/高,盒子总宽度/高度=width/height+margin。

在最初的浏览器中,不同浏览器会根据自己来选择盒模型模式,为了达到兼容的目的,我们一般在页面上加上一个DOCTYPE的声明标签,这样就都默认使用标准盒模型(不考虑ie8及以下远古版本)。那如果我们需要使用怪异模型怎么办呢?css3给我们增加了一个很棒的属性——box-sizing,其语法为

box-sizing :  content-box  || border-box || inherit;

当属性值为content-box时,盒模型为标准盒模型;为border-box |时,盒模型为怪异盒模型;为inherit时,将从父元素继承。
注:width/height/border/padding都是单独占用空间的,而margin并非单独占用空间,比如两个相邻的div的margin都是200px,那么这两个div中间的间距只有200px。

有了上述的相关知识后我们再来看背景,背景应用的范围时box-sizing的范围,其主要属性及属性值如下:

/*为背景设置一个纯色*/
background-color: <color> | transparent(默认) | inherit
/*指定在元素的背景中出现的背景图像(这可以是静态文件,也可以是生成的渐变)*/
background-image: <url> | none(默认) |inherit
/*指定背景应该出现在元素背景中的位置*/
background-position: position-x position-y
/*指定背景是否应该被重复(平铺)*/
background-repeat: repeat(默认) | repeat-x | repeat-y | no-repeat | inherit
/*当内容滚动时,指定元素背景的行为,例如,它是滚动的内容,还是固定的?*/
background-attachment: scoll(默认) | fixed | local
/*在一行中指定以上五个属性的缩写*/
background:[<bg-color>||<background-image>||<background-repeat>||<background-position>||<background-attachment>] | inherit
/*允许动态调整背景图像的大小*/
background-size: contain | cover | <length>

注:

  1. 所有背景属性不能继承!!!
  2. 背景还可以时渐变色,示例代码如下(更多信息请查找gradient属性):
/* linear-gradient属性为css3属性,对浏览器版本有要求,不过可以满足目前大部份最新浏览器,ie8及以下版本浏览器请自行查找兼容方法*/
background: linear-gradient(to bottom,  #000000 0%,#ffffff 100%);
  1. 背景图和背景色应同时指定,这样背景图不可用时背景色会替代
  2. 背景位置background-position通常情况为两个参数:横向位移和竖向位移,可以是数值或者百分比(默认均为0%),偏移后的坐标点为背景图中心的坐标点。当然也可以用top/bottom/center,left/right/center这两组参数替代;甚至还可以只用top/bottom/center/left/righ中的一个参数替代,这样意味着另外一个方向上的参数为center。例如background-position:top的含义其实是background-position:top center或者background-position:center top

2 边框(border)

1.边框可以分开写(border-width),也可以合并写(border),还可以单边写(border-top)。
边框常用属性有:

border-width: <length> | inherit
border-style: none | hidden | dotted | solid | dashed | double | groove | ridge | inset | outset | inherit
border-color: <color< | inherit

合并的语法为:

border: border-width border-style border-color

单边(以上边框为例)的语法为:

border-top: border-width border-style border-color

注:当边框样式为 groove | ridge | inset | outset时,边框的颜色要适当淡一点,否则看不出效果

2.边框还可以加(椭)圆角,其语法为:

border-radius: <length> | <percentage>

length用数值表示圆形的半径(单数值)或者椭圆的半长轴,半短轴(双数值并用“/”分开),负值无效:

border-radius: 30px;  /*圆形*/
border-radius: 30px/60px;  /*椭圆*/

percrntage用百分比表示圆形的半径(单数值)或者椭圆的半长轴,半短轴(双数值并用“/”分开),负值无效:

border-radius: 30%;  /*圆形*/
border-radius: 30%/60%;  /*椭圆*/

注:当百分比有两个数值是,第一个数值是width的百分比,第二个数值是height的百分比。

定义(椭)圆角顺序是以左上角开始,按顺时间方向,跟padding/margin一样,border-radius可以简写。下面举两个例子可以清楚的看出border-radius的用法:

border-radius: 1em/5em;
/* 等价于: */
border-top-left-radius:     1em 5em;
border-top-right-radius:    1em 5em;
border-bottom-right-radius: 1em 5em;
border-bottom-left-radius:  1em 5em;
border-radius: 4px 3px 6px / 2px 4px;
/* 等价于: */
border-top-left-radius:     4px 2px;
border-top-right-radius:    3px 4px;
border-bottom-right-radius: 6px 2px;
border-bottom-left-radius:  3px 4px;

3.边框图像(border-image)
这个暂时用的不多,准备下次总结图像的特殊使用方法时详解。

3 列表样式

基本属性如下:

  1. 符号样式(list-style-type):列表前标记的类型,其在ol和ul中有效,在dl中无效;主要属性值有 none | circle | square | decimal 等等,更多可以查看相关文档。注:ol和dl本质上就是list-style-type属性值不同。
  2. 列表符号位置(list-style-position):表明列表前面符号的位置,其属性值为 outside(默认)| inside。当属性值为outside时,列表符号不占内容位置,其位于padding中;当属性值为inside时,列表符号占用内容位置。
  3. 列表标记图像(list-style-image):用图像替代列表符号,其属性值为图片的url。注:list-style-image会覆盖掉list-style-type;我们也尽量不要使用这个属性,因为其尺寸不能改变,不能自适应屏幕大小,可以使用背景替代。

4 链接样式

链接样式其实就是该链接在不同的状态下显示的文本样式,具体的文本样式我们之前有讲过,这里就不赘述了,具体我们来说一说链接的几个状态及表示方式。

  1. a:link - 普通的、未被访问的链接
  2. a:visited - 用户已访问的链接
  3. a:hover - 鼠标指针位于链接的上方
  4. a:active - 链接被点击的时刻

通过以上伪类+样式可以设置链接在不同状态下的显示形式。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,393评论 5 467
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,790评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,391评论 0 330
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,703评论 1 270
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,613评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,003评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,507评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,158评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,300评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,256评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,274评论 1 328
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,984评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,569评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,662评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,899评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,268评论 2 345
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,840评论 2 339

推荐阅读更多精彩内容

  • 一、CSS入门 1、css选择器 选择器的作用是“用于确定(选定)要进行样式设定的标签(元素)”。 有若干种形式的...
    宠辱不惊丶岁月静好阅读 1,578评论 0 6
  • 1.块级元素和行内元素 块级(block-level)元素;行内(内联、inline-level)元素。 块元素的...
    饥人谷_小侯阅读 1,975评论 1 4
  • HTML 5 HTML5概述 因特网上的信息是以网页的形式展示给用户的,因此网页是网络信息传递的载体。网页文件是用...
    阿啊阿吖丁阅读 3,812评论 0 0
  • 概述 在网易云课堂学习李南江老师的《从零玩转HTML5前端+跨平台开发》时,所整理的笔记。笔记内容为根据个人需求所...
    墨荀阅读 2,324评论 0 7
  • 选择qi:是表达式 标签选择器 类选择器 属性选择器 继承属性: color,font,text-align,li...
    love2013阅读 2,299评论 0 11