课堂笔记-CSS基础2

文字常用属性

CSS对元素的样式控制主要通过各种属性来实现,其中字体属性主要控制文字的字体信息:

font-family属性设置字体类型
font-size属性设置字体大小
font-weight属性设置字体粗细,例如粗体bold,或者数值如900
font-style属性设置字体风格,例如斜体

文本属性可以对文本设置各种装饰

text-align属性设置文字对齐方式,例如左对齐left
word-spacing属性设置单词之间的间距
letter-spacing属性设置字母之间的间距
text-decoration属性设置文字修饰,例如,下划线underline
text-transform属性设置问题转换,例如,文字全部大写uppercase
text-shadow属性设置文本的阴影

背景属性

CSS中背景设置主要分为背景颜色和背景图像

使用background-color属性为元素设置背景色,可以直接写颜色字符串也可以写RGB值#rrggbbaa

要把图像放入背景,需要使用background-image属性
例如:background-image:url(img/fivestar.jpg);

设置背景图像的起始位置需要使用background-position属性进行设置
例如:background-position:0px 0px;

background-repeat 属性的属性值如果是 repeat,则会将背景图像在水平和垂直方向上都平铺
如果值是repeat-x 和 repeat-y 则将分别使图像只在水平或垂直方向上进行重复
如果值是no-repeat 则不允许图像在任何方向上进行平铺
默认地,背景图像将从一个元素的左上角开始

background-clip属性是CSS3的属性,主要用于背景图像或者颜色的裁剪区域
基本语法格式是:

background-clip : border-box | padding-box | content-box;

border-box是默认值,表示从边框区域向外裁剪背景(背景覆盖一直到边框位置)
padding-box表示从内边距区域向外裁剪背景(背景覆盖包含padding部分)
content-box表示从内容区域向外裁剪背景(背景覆盖仅包含内容部分)

线性渐变:为了创建一个线性渐变,必须至少定义两种颜色结点,也可以设置一个起点和一个方向(或一个角度),其定义的基本语法如下:

background: linear-gradient(direction, color-stop1, color-stop2, ...);

其中direction指明线性渐变的方向,默认是从上到下

重复的径向渐变语法为:

background: repeating-radial-gradient(shape, start-color, ..., last-color);

其中shape参数定义形状,其值可以是circle(圆形)或ellipse(椭圆形/默认值)

举个栗子:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>背景渐变</title>
<style> 
div{
	width:100px;
	height:100px;
	border-radius:50%;
}
#box1 {
	background:linear-gradient(45deg,#f00 30%,#ff0 60%);
}
#box2 {
	width:100px;
	height:100px;
	border-radius:50%;
	background:repeating-radial-gradient(circle at 50% 50%,red,yellow 10%,blue 15%);
}
</style>
</head>
<body>
	<div id="box1"></div>
	<div id="box2"></div>
</body>
</html>

列表属性

在CSS中,列表属性是设置无序列表标记(<ul></ul>)的呈现形式,常用的列表属性有:

list-style-type属性用于设置列表项标记的类型,这个类型主要有:disp、circle、square、none

list-style-image属性用于设置使用什么图像来作为列表符号

list-style-position属性用来指定列表符号显示的位置

盒子模型

CSS盒子模型是CSS样式设置的基础;
盒子模型认为任何HTML元素都是一个矩形的洋葱,由很多层组成,从内到外依次为:

  • 内容 content
  • 内边距 padding
    内边距是指盒子模型的边框与显示内容之间的距离,使用padding属性进行定义,语法格式如下:
padding:上下左右边距值;
padding:上下边距值, 左右边距值;
padding:上边距值, 左右边距值, 下边距值;
padding:上边距值, 右边距值, 下边距值, 左边距值;
  • 边框 border
    元素的边框(border)是围绕元素内容和内边距的一条或多条线;
    CSS中使用border属性设置元素边框的样式、宽度和颜色。
    边框线定义方式如下:
border: 宽度 样式 颜色;

此外,CSS3中边框还可以通过设置border-radius属性为元素增加圆角边框,该属性定义的语法如下:

border-radius : 像素值|百分比
  • 外边距 margin
    外边距是指边框到另外一个元素之间的距离,其作用是把一个元素撑大,使用margin属性可以定义元素的外边距,其语法如下:
margin:像素值;
margin:像素值, 像素值;
margin:像素值, 像素值, 像素值;
margin:像素值, 像素值, 像素值, 像素值;
  • 轮廓 outline

伪类和伪元素

伪类是一种特殊的类选择符,是能够被支持CSS的浏览器自动识别的特殊选择符,最大的用途是为超级链接定义不同状态下的样式效果。
伪类的语法是在原有的选择符后加一个伪类,其语法格式如下所示:

选择器:伪类{
  属性:属性值;
  属性:属性值;
  ……
}

常用的伪类如下:
表示状态:link, visited, hover, active
a:hover 必须在 a:link 和 a:visited 之后,a:active 必须在 a:hover 之后,需要严格按顺序才能看到效果;
结构化伪类:last-child
表单相关伪类:focus

举个栗子:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>伪类</title> 
<style>
a:link {					/* 未访问链接*/
	color:#000000;		 	
	}    
a:visited {					/* 已访问链接 */
	color:#00FF00;			
	}  
a:hover {					/* 鼠标移动到链接上 */
	color:#FF00FF;			
	}  	
a:active {					/* 鼠标点击时 */
	color:#0000FF;
	}  
input:focus					/*input标记获得焦点时*/
{
	background-color:yellow;
}
p:last-child				/*P标记的最后一个标记*/
{
	font-size:24px;
} 
</style>
</head>
<body>
<p><b><a href="/css/" target="_blank">这是一个链接</a></b></p>
First name: <input type="text" name="fname" /><br>
<p>This is some text.</p>
<p>This is some text.</p>
</body>
</html>

CSS的伪元素不是真正的页面元素,即没有对应的HTML元素,但是其所有用法和表现行为与真正的页面元素一样,可以对其使用例如页面元素一样的CSS样式,表面上看上去貌似是页面的某些元素来展现,实际上是CSS样式展现的行为,因此被称为伪元素
常用的伪元素如下所示:

before:在某个元素之前插入一些内容;
after:在某个元素之后插入一些内容;
first-letter:为某个元素中的文字的首字母或第一个字使用样式;
first-line:为某个元素的第一行文字使用样式;
selection:匹配用户被用户选中或者处于高亮状态的部分;
placeholder:匹配占位符的文本,只有元素设置了placeholder属性时,该伪元素才能生效

举个栗子:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>伪元素</title> 
<style>
p.fl:first-line 
{
	color:#ff00ff;
	font-size:24px;
}
p.myClass:first-letter{
	color:#ff0000;
	font-size:xx-large;
}
p.youClass:before{
	 content: "Hello,"
}
p.youClass:after{
	content: "Welcome!"
}
</style>
</head>
<body>
<p class="fl">向文本的首行设置特殊样式<br/>可以使用 "first-line" 伪元素。</p>
<p class="myClass">可以使用 "first-letter" 伪元素向文本的首字母设置特殊样式:</p>
<p class="youClass"> World!</p>
</body>
</html>

块元素和行内元素

块元素在页面中以区域块的形式出现,其特点是,每个块元素通常都会独自占据一整行或多整行,可以对其设置宽度、高度、对齐等属性。
一个行内元素通常会和其前后的其他行内元素显示在同一行中,不占有独立的区域,仅仅靠自身的字体大小和图像尺寸来支撑结构,一般不可以设置高度、对齐等属性,常用于控制页面中文本的样式。
行内元素与块元素可以通过display属性进行相互交换,display属性常用的属性值如下:

inline:此元素将显示为行内元素(行内元素默认的 display属性值)
block:此元素将显示为块元素(块元素默认的 display属性值)
inline-block:此元素将显示为行内块元素,可以对其设置宽度、高度和对齐等属性,但是该元素不会独占一行
none:此元素将被隐藏,不显示,也不占用页面空间,相当于该元素不存在

举个栗子:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>块元素与行内元素</title>
<style>
  p{ background-color:pink;}
  span{ background-color:yellow; display:block;}
  i{ background-color:#CFF;}
  div{ background-color:#FFC; display:inline;}
</style>
</head>
<body>
  <p>p标记——块元素</p>
  <span>span标记——行内元素</span>
  <i>i标记——行内元素</i>
  <div >div标记——块元素</div>
</body>
</html>

溢出

在盒子模型中的代表块元素的矩形对象,可以通过CSS样式来定义内容区域的高度与宽度,当这个内容无法容纳子矩形对象时,对于这些子矩形对象必须决定怎么显示,显示什么,这样的处理规则就称为溢出处理。
CSS溢出定义方法:

overflow:visible|hidden|scroll|auto

visible表示溢出的部分依然可见
hidden表示溢出的部分不可见
scroll表示溢出的部分显示滚动条
auto表示自动设置

可见性

一个元素是否在网页中被用户看见,可以通过两个属性进行设置:

  • visibility:
    visibility属性设置隐藏,但隐藏后其原来位置仍然被占用。
    该属性的语法格式如下所示:
visibility: visible | hidden  ;
  • display:
    当元素的display属性被设置为none时,元素被隐藏,并且元素所占的位置能被其他元素占用。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值