[HTML+CSS基础]

background-size:cover

适用于背景图片,会将图片平铺

text-align对齐

用法: 作用于块级元素上让行内元素对齐或居中
比较典型的应用:

  1. 文本的对齐
  2. 作用于table标签上
  3. 用于图片的对齐

表示强调

  1. em标签:语义:强调。效果:斜体

  2. strong标签:语义:强调。效果:粗体(一般使用这个)

表示引用

  1. q标签:语义:一句话的简短引用。效果:文字被放到双引号内

  2. blockquote标签:语义:长文本引用。效果:文字首尾会添加缩进

span标签

语义:没有语义,如果需要单独对标签添加效果,也可以使用它

br换行标签

语义:换行

语法:xhtml 1.0中使用〈br /〉(推荐使用)

html4.01中使用

注意:在html中输入换行、空格都是没有用的,需要添加标签实现效果

空格

语法:

添加代码

添加一行代码使用:code标签
添加多行代码使用:pre标签

table标签

语义:用于创建表格
包含的标签:table、tbody、tr、th、td

  • <tbody>…</tbody>:当表格内容非常多时,表格会下载一点显示一点,但如果加上<tbody>标签后,这个表格就要等表格内容全部下载完才会显示。如右侧代码编辑器中的代码。

  • tr标签:用于创建表头,默认样式:粗体并且居中

  • th标签:用于创建表头中的单元格

  • tr标签:表示一行

  • td标签:表示表中内容的一个单元格

  • 为表格添加摘要,如:

    <table summary="这是摘要"></table>
    

摘要在浏览器中是不会显示的,只便于搜索引擎搜索到

  • 为表格添加表头,如:
    <caption>这是表头</caption>

class与id选择器

class选择器可以使用词列表,也就是可以指定多个类名,而id选择器则不可以,如:
〈span class=“stress bless”〉可以使用词列表〈/span〉
上面的是正确的
〈span id=“stress bless”〉不可以使用词列表〈/span〉不可以这么写,id只能指定一个

样式优先级

优先级排列:浏览器默认样式 < 网页制作者的样式 < 用户自定义的样式;
注意: 如果样式这只了"!important", 那么它的优先级高于用于自定义的样式

段落中的文字设置

  1. 文字上面的删除线: p{text-decoration: line-through;}
  2. 两个字母之间的间距:p{letter-spacing: 20px;}
  3. 两个单词之间的间距:p{word-spacing: 20px;}
  4. 块状元素的排列:
    左对齐: p{text-align: left;}
    右对齐: p{text-align: right;}
    居中: p{text-align: center;}

元素分类

  1. 块级元素
包括:
<div>, <p>,<h1>~<h6>, <input>, <ul>,<ol>,
<dl>,<table>,<address>,<blockquote>,<form>等
  1. 内联元素
包括:
<a>,<i>,<span>,<em>,<strong>,<label>,
<br>,<q>,<code>,<cite>,<var>等
  1. 块级内联元素
<img>, <input>等

为什么这么分类?这三种元素的区别?
块级元素的width、height、margin和padding有效
内联元素的width、height、margin(top和bottom)和padding(top和bottom)不能设置,但是margin-right、margin-left、padding-right和padding-left是可以设置的

块级元素特点

  1. 每个块级元素独占一行,并且其后的元素也另起一行
  2. 元素的高度、宽度、行高、顶边距和底边距可以设置
  3. 元素宽度在不设置的情况下是父元素的100%

内联元素特点

  1. 和其他元素在一行上
  2. 高度、宽度、行高、底边距和顶边距 不可设置
  3. 宽度=内容宽度
    注意: 如果两个内联元素之间用空格或者换行隔开,则它们之间会有一个间隙

内联块状元素特点

  1. 和其他元素在一行上
  2. 宽度、高度、行高、底边距和顶边距可以设置

网页布局的基本模型

布局模型和盒模型,布局模型是建立在盒模型之上的

CSS包含三种布局模型:Flow,Float,Layer;
在网页中,元素有三种模型:

  1. 流动模型(Flow)
  2. 浮动模型(Float)
  3. 层模型(Layer)

流动模型

流动模型是默认的网页布局模式,其中网页元素默认按流动模式布局
特点有二:

  1. 块级元素都会在所处的包含元素内自上而下的垂直延伸分布,默认情况下块级元素宽度为100%,也就是占用一行宽度
  2. 内联元素都会在所处的包含元素内从左到右水平分布

浮动模型

使用float实现
块级元素独占一行,可以通过设置它的宽度,然后设置float,使两个块级元素排列在一行

层模型

三种形式:

  1. 绝对定位:(position:absolute)
  2. 相对定位:(position:relative)
  3. 固定定位:(position: fixed)

绝对定位

positon: absolute

作用:

  1. 将元素从文档流中脱离出来
  2. 然后使用top、bottom、left、right等属性相对于其最接近的具有定位属性(relative属性)的父元素进行绝对定位,如果没有父元素存在定位属性,则相对于html元素进行定位,也就是浏览器窗口

长度单位

主要分三种:px, em, %

  1. em
    就是本元素给定字体的font-size。如下:
    p{font-size:12px; text-indent:2em;}
    这里实现的首行缩进就是2*12px=24px
    **注意:当本元素设置的font-size为em,那么它是以父元素的font-size为依据的

水平居中

分两种情况:行内元素和块级元素
块级元素又分为定宽块级元素和不定宽块级元素

行内元素

如果需要句中的为文本或图片,则可以设置它的父元素text-align:center来实现

块状元素

块状元素的居中分为两种:定宽块状元素和不定宽块状元素,使用text-align:center设置不起作用

定宽块状元素

先需要设置width属性,然后使用margin:0 auto进行设置

不定宽块状元素

三种方法实现:


图片发自简书App
图片发自简书App

注意:针对第一种方法的解释,比较简洁的实现方法是.wrap{display:table; margin:0 auto;}(这里假设要居中的标签类名为wrap)

不定宽块状元素方法二

第一:设置需要水平居中的父元素 为:text-align: center;
第二: 设置
需要水平居中的元素
为:display: inline;

不定宽块状元素方法三

第一: 设置父元素position: relative; left: 50%; 此时父元素的左外边界=屏幕中心线
第二:设置父元素float;父元素的宽度=子元素的宽度
第三: 设置居中元素position: relative; left: -50%; 相对于父元素向左偏移50%,因为父元素的宽度=子元素的宽度,因此就是相对于自己的宽度向左偏移50%;也就实现居中了
注意:如果设置了float,那么就会生成块级框,导致父元素的宽度=子元素的宽度,如果没有设置float,那么它的宽度为屏幕的宽度(假如父元素的父元素为html);

垂直居中

垂直居中分为两种情况:父元素高度确定的单行文本父元素高度确定的多行文本

父元素高度确定的单行文本

设置父元素的height(高度)和line-height(行间距)一致

父元素高度确定的多行文本

方法一:

给需要居中的标签添加:
<table><tbody><tr><td>
这里添加需要居中的标签
</table></tbody></tr></td>
同时,设置 vertical-align:middle。

html代码:

<body>
<table><tbody><tr><td class="wrap">
<div>
     <p>看我是否可以居中。</p>
     <p>看我是否可以居中。</p>
      <p>看我是否可以居中。</p> 
</div>
</td></tr></tbody></table>
</body>

css代码:

table td{height:500px;background:#ccc}

因为 td 标签默认情况下就默认设置了 vertical-align 为 middle,所以我们不需要显式地设置了。

方法二:

对父元素添加:

display:table-cell;/*IE8以上及Chrome、Firefox*/
vertical-align:middle;/*IE8以上及Chrome、

html代码:

<div class="container">
    <div>
        <p>看我是否可以居中。</p>
        <p>看我是否可以居中。</p>
        <p>看我是否可以居中。</p>
    </div>
</div>

css代码:

<style>
.container{
    height:300px;
    background:#ccc;
    display:table-cell;/*IE8以上及Chrome、Firefox*/
    vertical-align:middle;/*IE8以上及Chrome、Firefox*/
}
</style>

这种方法的好处是不用添加多余的无意义的标签,但缺点也很明显,它的兼容性不是很好,不兼容 IE6、7而且这样修改display的block变成了table-cell,破坏了原有的块状元素的性质

隐性改变display类型

有一个有趣的现象就是当为元素(不论之前是什么类型元素,display:none 除外)设置以下 2 个句之一:

  1. position : absolute
  2. float : left 或 float:right

简单来说,只要html代码中出现以上两句之一,元素的display显示类型就会自动变为以 display:inline-block块状元素的方式显示,当然就可以设置元素的 width 和 height 了,且默认宽度不占满父元素

如下面的代码,小伙伴们都知道 a 标签是 行内元素,所以设置它的 width 是 没有效果的,但是设置为 position:absolute 以后,就可以了。

<div class="container"> <a href="#" title="">进入课程请单击这里</a></div>

css代码

<style>.container a{ position:absolute; width:200px; background:#ccc;}</style>

想不起 display:inline-block 是做什么的小伙伴们,单击“元素分类--内联块状元素”可返回到前面小节进行复习。

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

推荐阅读更多精彩内容

  • CSS格式化排版 1、字体 我们可以使用css样式为网页中的文字设置字体、字号、颜色等样式属性。下面我们来看一个例...
    张文靖同学阅读 1,270评论 0 3
  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,722评论 1 92
  • CSS选择器 1、类和ID选择器的区别 相同点:可以应用于任何元素 不同点: 1、ID选择器只能在文档中使用一次。...
    jovelin阅读 250评论 0 1
  • 一、CSS盒模型 1、元素分类:html标签中元素分为块状元素、内联元素(行内元素)和内联块状元素。 常用块状元素...
    远远暖暖阅读 506评论 0 0
  • 我坐在沙发上, 我在很用心的逃离。 逃离,这个喧嚣的世界; 归入,平静的,梦幻的母体。 幻想,我在海洋中漂浮, 大...
    古判思安阅读 286评论 2 1