css3 练习

css3 文本效果

css3中包含几个新的文本特征

在本章中您将了解一下文本属性

text-shadow

box-shadow

word-wrap

word-break

css3 的文本阴影

css3中,text-shadow 属性适用于文本阴影。

Text shadow effect!

实例

给标题添加阴影:

h1

{

  text-shadow:5px 5px 5px #FF0000;

}

css3 box-shadow 属性

css3中 box-shadow 属性适用于盒子阴影

实例

div{

  box-shadow:10px 10px 5px #888888;

}

给阴影添加颜色

div{

  box-shadow:10px 10px grey;

}

给阴影添加一个模糊效果

div{

  box-shadow:10px 10px 5px grey;

}

在::brfore 和 ::after 两个伪元素中添加阴影效果

实例

#boxshadow{

  position:relative;

  box-shadow:1px 2px 4px rgba(0,0,0,.5);

  padding:10px;

  background:white;

}

#boxshadow img{

  width:100%;

  border:1px solid #8a4419;

  border-style:inset;

}

#boxshadow::after{

  content:'';

  position:absolute;

  z-index:-1;

  box-shadow:0 15px 20px rgba(0,0,0,0.3);

  width:70%;

  left:15%;

  height:100px;

  bottom:0;

}

阴影的一个使用特例是卡片效果

实例

div.card{

  width:250px;

  box-shadow:0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);

  text-align:center;

}

css3 Text Overflow 属性

css3 文本溢出属性指定应向用户如何显示溢出内容

实例

p.test1{

  white-space:nowrap;

  width:200px;

  border:1px solid #000000;

  overflow:hidden;

  text-overflow:clip;

}

p.test2{

  white-space:nowrap;

  width:200px;

  border:1px solid #000000;

  overflow:hidden;

  text-overflow:ellipsis;

}

css3的换行

css3中,自动换行属性允许您强制文本换行,即使这意味着分裂它中间的一个字;

实例

允许长文本换行:

p{word-wrap:break-word;}

css3 单词拆分换行

css3单词拆分换行属性指定换行规则:

实例

p.test1{

  word-break:keep-all;

}

p.test2{

  word-break:break-all;

}

新文本属性

属性 - 描述

hanging-punctucation 规定标点字符是否位于线框之外。

punctuation-trim 规定是否对标点字符进行修剪。

text-align-last 设置如何对齐最后一行或紧挨着强制换行符之前的行。

text-emphasis 向元素的文本应用重点标记以及重点标记的前景色。

text-justify 规定当text-aligin 设置为 “justify” 时所使用的对齐方法。

text-outline 规定文本的轮廓。

text-overflow 规定当文本溢出包含元素是发生的事情。

text-wrap 规定文本的换行规则。

word-wrap:允许对长的不可分割的单词进行分割并换行到下一行。

css3 字体

css3 @font-face 规则

实例

<style>

  @font-face

{

  font-family:myFirstFont;

  src:url(sansation_light.woff);

}

div

{

  font-family:myFirstFont;

}

</style>

使用粗体文本

您必须添加另一个包含粗体文字的@font-face 的规则:

实例

@font-face

{

  font-family:myFirstFont;

  src:url(sansation_bold.woff);

  font-weight:bold;

}

css3 字体描述

描述符 值 描述

font-family name 必须 规定字体的名称

src url 必需 定义字体文件的url

font-stretch ...

font-style normal italic oblique

font-weight normal bold

unicode-range

css3 2d 转换

我们可以移动 比例化 反转 旋转 和拉伸元素

2D 变换方法

translate()

rotate() scale() skew() matrix()

实例

div

{

  transform:rotate(30deg);

  -ms-transform:rotate(30deg);

  -webkit-transform:rotate(30deg);

}

translate()方法

translate()方法,根据左(X轴)和顶部(Y轴)位置给定的参数,从当前元素位置移动。

实例

div

{

  transform:translate(50px,100px);

  -ms-transform:translate(50px,100px);

  -webkit-transform:translate(50px,100px);

}

translate 值(50px,100px) 是从左边元素移动50个像素,并从顶部移动100像素

rotate()方法 在一个给定度数顺时针旋转的元素,负值是允许的,这样时间元素逆时针旋转。

实例

div

{

  transform:rotate(30deg);

  -ms-transform:rotate(30deg);

  -webkit-transform:rotate(30deg);

}

rotate值(30deg) 元素顺时针旋转30度。

scale()方法 改元素增加或减少的大小,取决于宽度(X轴)和高度(Y轴)的参数:

实例

-ms-transform:scale(2,3);

-webkit-transform:scale(2,3);

transform:scale(2,3);

scale(2,3) 转变宽度为原来的大小的2倍,和其他原始大小3倍的高度。

skew()方法

语法

transform:skew(<angle>[,<angle>]);

包含两个参数值,分别表示X轴和Y轴倾斜的角度,如果第二个参数为空,则默认为0 ,参数为负数表示向相反方向倾斜。

skewX(<angle>);表示只在X轴(水平方向)倾斜。

skewY(<angle>);表示只在Y轴(垂直方向)倾斜。

实例

div

{

  transform:skew(30deg,20deg);

  -ms-transform:skew(30deg,20deg);

  -webkit-transform:skew(30deg,20deg);

}

skew(30deg,20deg) 元素在X轴和Y轴上倾斜20度30度。

matrix()方法

matrix()方法和2D变换方法合并成一个。

matrix 方法有六个参数,包含旋转 缩放 移动(平移) 和倾斜功能

实例

利用matrix()方法旋转div 元素30度

div

{

  transform:matrix(0.866,0.5,-0.5,0.866,0,0);

  -ms-transform:matrix(0.866,0.5,-0.5,0.866,0,0);

  -webkit-transform:matrix(0.866,0.5,-0.5,0.866,0,0);

}

新转换属性

transform 适用于2D或3D转换的元素

transform-origin 允许您更改转化元素位置

2D 转换方法

函数 描述

matrix(n,n,n,n,n,n) 定义2D转换,使用六个值的矩阵。

translate(x,y) 定义2D转换,沿着X和Y轴移动元素。

translateX(n) 定义2D转换,沿着X轴移动元素。

translateY(n) 定义2D转换,沿着Y轴移动元素。

scale(x,y) 定义2D缩放转换,改变元素的宽度和高度。

scaleX(n) 定义2D缩放转换,改变元素的宽度。

scaleY(n) 定义2D缩放转换,改变元素的高度。

rotate(angle) 定义2D转换, 在参数中规定角度。

skew(x-angle,y-angle) 定义2D倾斜转换,沿着X和Y轴。

skewX(angle) 定义2D倾斜转换,沿着X轴。

skewY(angle) 定义2D倾斜转换,沿着Y轴。

css3 3D 转换

css3 允许您使用3D转换来对元素进行格式化。

rotateX() 方法 围绕其在一个给定度数X轴旋转的元素。

实例

div{

  transform:rotateX(120deg);

  --webkit-transform:rotateX(120deg);

}

rotateY()方法

rotateY()方法 , 围绕其在一个给定度数Y轴旋转的元素。

实例

div

{

  transform:rotateY(130deg);

  --webkit-transform:rotateY(130deg);

}