HTML笔记4

字体的样式

设置字体颜色,使用color来设置文字的颜色

设置文字的大小,浏览器中一般默认的文字大小都是16px

font-size设置的并不是文字本身的大小,在页面中,每个文字都是处在一个看不见的框中的

我们设置的font-size实际上是设置格的高度,并不是字体的大小

一般情况下文字都要比这个格要小一些,也有时会比格大,根据字体的不同,显示效果也不同

通过font-family可以指定文字的字体

当采用某种字体时,如果浏览器支持则使用该字体,如果字体不支持,则使用默认字体

该样式可以同时指定多个字体,多个字体之间使用“,”分开

当采用多个字体时,浏览器会优先使用前边的字体,如果前边没有,再尝试下一个

浏览器使用的字体默认就是计算机中的字体,如果计算机中有,则使用,如果没有就不用

在开发中,如果字体太奇怪,用的人太少了,尽量不要使用,有可能用户的电脑没有,就不能达到想要的效果

字体的分类

在网页中将字体分成5大类:

                                           serif(衬线字体)

                                           sans-serif(非衬线字体)

                                           monospace (等宽字体)

                                           cursive (草书字体)

                                           fantasy (虚幻字体)

可以将字体设置为这些大的分类,浏览器会自动选择指定的字体,并应用样式

一般会将字体的大分类,指定为font-family中的最后一个字体

字体的其它样式

font-style可以用来设置文字的斜体

可选值:

            normal 默认值,文字正常显示

            italic 文字会以斜体显示

            oblique 文字会以倾斜的效果显示

大部分浏览器都不会对倾斜和斜体做区分,也就是说我们设置italic和oblique效果是一样的

一般我们只会使用italic

font-weight可以用来设置文本的加粗效果

可选值:

             normal 默认值,文字正常显示

             bold 文字加粗显示

该样式也可以指定100-900之间的9个值

但是由于用户的计算机往往没有这么多级别的字体,所以200有可能比100粗,但也有可能是一样的

font-variant可以用来设置小型大写字母

可选值:

             normal 默认值,文字正常显示

             small-caps 文本以小型大写字母显示

小型大写字母:将所有的字母都以大写形式显示,但是小写字母的小型大写,要比大写字母小一些

在CSS中还为我们提供了一个样式叫font,使用该样式可以同时设置字体相关的所有样式

可以将字体的样式值统一写在font样式中,不同的值之间使用空格隔开

使用font设置字体样式时,斜体 加粗 小大字母,没有顺序要求,甚至可写可不写,如果不写则使用默认值

但是要求文字的大小和字体必须写,而且字体必须是最后一个样式,大小必须是倒数第二个样式

实际上使用简写属性也会有一个比较好的性能

行间距

行间距=行高-字体大小

用line-height来表示行间距

注意:行高和字体大小的单位要是有就一定要写上,不然差的可就多了,没有就不用了

垂直居中

把line-height设置成和它的上一级一样的大小的时候,就会垂直居中

这种方式还适用于单行文本,不适用于多行文本

常用于导航

在字体大小的后面画斜线就可以写行高

不写属性表示使用浏览器的默认值

文本样式

text-transform样式用于将元素中的字母全都变成大写

大写:text-transform:uppercase

小写:text-tansform:lowercase

首字母大写:text-transform:capitalize

正常:text-transform:none

这种样式只对英文有用

文本的修饰

text-decoration属性,用来给文本添加各 种修饰

通过它可以为文本的上方、下方 或者中间添加线条

可选值:

            underline表示一条下划线

            overline表示一条上划线

            line-through表示一条中划线(删除线)

            none表示默认值

none还可以去掉超链接的下划线,用

a{

     text-decoration:none

   }

来表示

字母间距和单词间距

letter-spacing用来设置字符之间的间距

word-spacing用来设置单词之间的间距

这两个属性都可以直接指定一个长度或百分数作为值

正数代表的是增加距离,而负数代表减少距离

对齐文本

text-align用于设置文本的对齐方式。

可选值:left:左对齐,right:右对齐,justify:两边对齐,center:居中对齐

首行缩进

text-indent用来设置首行缩进。

该样式需要指定一个长度,并且只对第一 行生效。

所有浏览器都支持 text-indent 属性

注释:任何的版本的 Internet Explorer (包括 IE8)都不支持属性值 "inherit"

定义:text-indent 属性规定文本块中首行文本的缩进

注释:允许使用负值,如果使用负值,那么首行会被缩进到左边

注意:在 CSS 2.1 之前,text-indent 总是继承计算值,而不是声明值

文章缩进两格

{

  font-size:1px

  text-indent:2em

}

来表示


盒模型

CSS处理网页时,它认为每个元素都包含在一个不可见的盒子里

一个盒子我们会分成几个部分:内容区(content);内边距(padding);边框(border);外边距(margin)

内容区

内容区指的是盒子中放置内容的区域,也就是元素中的文本内容,子元素都是存在于内容区中的

如果没有为元素设置内边距和边框,则内容区大小默认和盒子大小是一致的

通过width和height两个属性可以设置内容区的大 小

width和height属性只适用于块元素

内边距

内边距指的就是元素内容区与边框以内的空间

默认情况下width和height不包含padding的大小

使用padding属性来设置元素的内边距

例如:

         padding:10px 20px 30px 40px

         这样会设置元素的上、右、下、左四个方向的内边距

         padding:10px20px 30px;

         分别指定上、左右、下四个方向的内边距

         padding:10px 20px;

         分别指定上下、左右四个方向的内边距

         padding:10px;

         同时指定上左右下四个方向的内边距

同时在css中还提供了padding-top、padding-right、padding-right、padding-bottom分别用来指定四个方向的内边距

边框

可以在元素周围创建边框,边框是元素可见框的最外部

可以使用border属性来设置盒子的边框:border:1pxred solid;

上边的样式分别指定了边框的宽度、颜色和样式

也可以使用border-top/left/right/bottom分别指定上右下左 四个方向的边框

和padding一样,默认width和height并包括边框的宽度

边框的样式

边框可以设置多种样式:

                                      none(没有边框)

                                      dotted(点线)

                                      dashed(虚线)

                                      solid(实线)

                                      double(双线)

                                      groove(槽线)

                                      ridge(脊线)

                                      inset(凹边)

                                      outset(凸边)

设置边框

设置一边的边框,比如顶部边框,可以按如下设置:

border-top-color:red;    /* 设置顶部边框颜色为红色 */ 

border-top-width:10px;   /* 设置顶部边框粗细为10px */  

border-top-style:solid;  /* 设置顶部边框的线性为实线,常用的有:solid(实线) 

  dashed(虚线)  dotted(点线); */

上面三句可以简写成一句: 

border-top:10px solid red;

设置其它三个边的方法和上面一样,把上面的'top'换成'left'就是设置左边,换成'right'就是设置右边,换成'bottom'就是设置底边。

四个边如果设置一样,可以将四个边的设置合并成一句: 

border:10px solid red;

外边距

外边距是元素边框与周围元素相距的空间

使用margin属性可以设置外边距

用法和padding类似,同样也提供了四个方向的  margin-top/right/bottom/left

当将左右外边距设置为auto时,浏览器会将左右外边距设置为相等,所以这行代码margin:0 auto可以使元素居中

盒子的width和height设置的是盒子内容的宽和高,不是盒子本身的宽和高

盒子的真实尺寸计算公式如下:

                                                盒子宽度 = width + padding左右 + border左右

                                                盒子高度 = height + padding上下 + border上下 

外边距合并

外边距合并指的是,当两个垂直外边距相遇时,它们将形成一个外边距。合并后的外边距的高度等于两个发生合并的外边距的高度中的较大者。解决方法如下:

1、使用这种特性

2、设置一边的外边距,一般设置margin-top

3、将元素浮动或者定位

margin-top 塌陷

在两个盒子嵌套时候,内部的盒子设置的margin-top会加到外边的盒子上,导致内部的盒子margin-top设置失败,解决方法如下:

1、外部盒子设置一个边框

2、外部盒子设置 overflow:hidden

3、使用伪元素类:

                             .clearfix:before{

                                                        content: '';

                                                        display:table;

                                                       }

去掉浏览器的默认样式

*{

    margin:0

    padding:0

}

块元素、内联元素、内联块元素

块元素,也可以称为行元素,布局中常用的标签如:div、p、ul、li、h1~h6、dl、dt、dd等等都是块元素,它在布局中的行为:支持全部的样式;如果没有设置宽度,默认的宽度为父级宽度100%;盒子占据一行、即使设置了宽度

内联元素,也可以称为行内元素,布局中常用的标签如:a、span、em、b、strong、i等等都是内联元素,它们在布局中的行为:

                       支持部分样式(不支持宽、高、margin上下、padding上下)

                       宽高由内容决定

                       盒子并在一行

                       代码换行,盒子之间会产生间距

                      子元素是内联元素,父元素可以用text-align属性设置子元素水平对齐方式

                      用line-height属性值设置垂直对齐方式

去掉内联元素之间的换行

将内联元素的父级设置font-size为0,内联元素自身再设置font-size

内联块元素,也叫行内块元素,是新增的元素类型,现有元素没有归于此类别的,img和input元素的行为类似这种元素,但是也归类于内联元素,我们可以用display属性将块元素或者内联元素转化成这种元素。它们在布局中表现的行为:

                 支持全部样式

                 如果没有设置宽高,宽高由内容决定

                 盒子并在一行

                 代码换行,盒子会产生间距

                子元素是内联块元素,父元素可以用text-align属性设置子元素水平对齐方式

                用line-height属性值设置子元素垂直对齐方式

这三种元素,可以通过display属性来相互转化,不过实际开发中,块元素用得比较多,所以我们经常把内联元素转化为块元素,少量转化为内联块,而要使用内联元素时,直接使用内联元素,而不用块元素转化

display

我们不能为行内元素设置width、height、  margin-top和margin-bottom

我们可以通过修改display来修改元素的性质

可选值:

             block:设置元素为块元素,元素以块元素显示

             inline:设置元素为行内元素,元素以内联元素显示

             inline-block:设置元素为行内块元素,元素以内联块元素显示

             none:隐藏元素(元素将在页面中完全消失),元素隐藏且不占位置

visibility

visibility属性主要用于元素是否可见

和display不同,使用visibility隐藏一个元素,隐藏后其在文档中所占的位置会依然 保持,不会被其他元素覆盖

可选值:

             visible:可见的

             hidden:隐藏的

overflow

当相关标签里面的内容超出了样式的宽度 和高度是,就会发生一些奇怪的事情,浏览器会让内容溢出盒子

可以通过overflow来控制内容溢出的情况

可选值:

             visible:默认值,内容不会被修剪,会呈现在元素框之外

             scroll:添加滚动条,内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容

             auto:根据需要添加滚动条,如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容

             hidden:隐藏超出盒子的内容,内容会被修剪,并且其余内容是不可见的,此属性还有清除浮动、清     除margin-top塌陷的功能

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

推荐阅读更多精彩内容

  • 概述 在网易云课堂学习李南江老师的《从零玩转HTML5前端+跨平台开发》时,所整理的笔记。笔记内容为根据个人需求所...
    墨荀阅读 2,331评论 0 7
  • 1.CSS基本概念 1.1 CSS的定义 CSS(Cascading Style Sheets)层叠样式表,主要用...
    寥寥十一阅读 1,805评论 0 6
  • 一、CSS入门 1、css选择器 选择器的作用是“用于确定(选定)要进行样式设定的标签(元素)”。 有若干种形式的...
    宠辱不惊丶岁月静好阅读 1,583评论 0 6
  • CSS 指层叠样式表(Cascading Style Sheets),是一种用来为结构化文档(如 HTML 文档或...
    神齐阅读 2,075评论 0 14
  • 本文为阅读《Head First HTML 与 CSS》的css部分的读书笔记,方便回顾书上的知识,另一篇为Hea...
    兼续阅读 1,803评论 0 17