CSS文本效果、2D/3D转换

一、文本效果

1、文本阴影

文本阴影是通过text-shadow样式属性来设置;通过该属性可以向文本添加一个或多个阴影。

 示例代码如下:

<style>
    h1 {
        text-shadow: 2px 2px 5px red;
    }
<h1>文本阴影效果!</h1>

2、盒子阴影

box-shadow属性应用阴影于元素。

<style> 
    div {
        width: 300px;
        height: 100px;
        padding: 15px;
        background-color: yellow;
        box-shadow: 10px 10px 5px grey;
    }
</style>
<div>已设置 box-shadow 的 div 元素</div>

3、卡片阴影

<!DOCTYPE html>
<html>
<head>
    <style>
        .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;
        }
        .header {
            background-color: #4CAF50;
            color: white;
            padding: 10px;
            font-size: 40px;
        }
        .container {
            padding: 10px;
        }
    </style>
</head>
<body>
    <div class="card">
        <div class="header">
            <h1>1</h1>
        </div>
        <div class="container">
            <p>January 1, 2021</p>
        </div>
    </div>
</body>
</html>

4、文本溢出

text-overflow 属性规定应如何向用户呈现未显示的溢出内容。

4.1 css实现单行文本溢出显示...

  1. /* 将溢出文本进行隐藏 */
    overflow: hidden;
  2. /* 将溢出文本改为省略号 */
    text-overflow: ellipsis;
  3. /* 设置文本不换行 */
    white-space: nowrap;

 4.2 多行文本溢出显示...

display: -webkit-box;
-webkit-box-orient: vertical;
/* 控制显示的行数 */
-webkit-line-clamp: 3;
overflow: hidden;
  1. -webkit-line-clamp: 3;用来限制在一块元素显示的文本的行数。为了实现该效果,它需要组合其他的webkit属性。常见结合属性:
  2. display: -webkit-box;必须结合的属性,将对象作为弹性伸缩盒子模型显示。
  3. -webkit-box-orient: vertical;必须结合的属性,设置或检索伸缩盒对象的子元素的排列方式
  4. text-overflow: ellipsis;,可以用来多行文本的情况下,用省略号“….”隐藏超出范围的文本。

二、2D转换

转换(transform)是CSS3中具有颠覆性的特征之一,可以实现元素的位移、旋转、缩放等效果。转换也可以简单理解为变形。

可分为三种:

  1. 移动: translate
  2. 旋转: rotate
  3. 缩放: scale

2.1 二维坐标系

 

2.2 移动translate

移动是2D转换里面的一种功能。

作用:可以改元素在页面中的位置,类似定位。

1、它的语法和取值:

transform: translate(x,y);

也可以单独文开写:

  • transform: translateX(n);
  • transform: translateY(n) ;

2、注意: 

(1)、定义2D转换中的移动,沿着X和Y轴移动元素;

(2) 、 translate中的百分比单位是相对于自身元素的半径来说的transform: (50%,50%);

(3) 、对行内元素没有效果。

(4)、分开写的时候X,Y要大写,不分开写的时候要把它们用逗号隔开。translate最大的优点:不会影响到其他元素的位置;

2.3 旋转rotate

旋转的作用为:让元素在二维平面内顺时针旋转或者逆时针旋转。

1、语法:

trans fom:rotate (度数)

2、注意:

(1) .rotate里面跟度数,单位是deg比如rotate(180deg);

(2)、角度为正时,顺时针,负时,为逆时针;

(3)、默认旋转的中心点是元素的中心点。

2.4 转换中心点transform-origin

作用:我们可以设置元素转换的中心点。

1、语法:

transform-origin: x y;

2、注意:

(1)、后面的参数x和y一定要用空格隔开;

(2) 、xy默认转换的中心点是元素的中心点(50%50%);

(3)、还可以给xy设置像素或者方位名词( top/bottom/left/right/center)。

2.5 缩放scale

缩放的作用:可以放大和缩小。

只要给元素添加上了这个属性就能控制它放大还是缩小。

1、语法:

transform: scale(x,y);

2、注意:

(1)、其中的x和y是用逗号分隔开的;

(2) . transform: scale(1,1):宽和高都放大一倍,相对于没有放大。

(3) . transform: scale(2,2):宽和高都放大了2倍;

(4)、简单写法: transform: scale(2):只写一个参数,第二个参数则和第一个参数一样相当于scale(2,2);

(5) .transform: scale(0.5,0.5):缩小,只要输入的数值是小于1的就是缩放效果;

(6) 、sacle缩放最大的优势为:在于可以设置转换中心点缩放,默认以中心点缩放的,而且不影响其他元素。

2.6 转换的综合写法

前面讲的这些东西是可以一起写的就是我们上面标题说的综合写法。

但是要格外注意以下几点:

注意:

1、同时使用多个转换,其格式为: transform: translate() rotate()scale(..等等,一定要注意的一点:它们之间一定要用分号隔开;

2、它们的顺序会影响转换的效果。(先旋转会改变坐标轴方向);

3、当我们同时有位移和其他属性的时候,记得一定要将位移放到最前面。

三、3D转换 

1、CSS 3D转换方法

通过CSS transform属性,您可以使用以下3D转换方法:.

  • rotateX()方法使元素绕其×轴旋转给定角度
  • rotateY()方法使元素绕其丫轴旋转给定角度
  • rotateZ()方法使元素绕其Z轴旋转给定角度

 2、CSS转换属性

属性描述
transform向元素应用2D或3D转换。
transform-origin允许你改变被转换元素的位置。
transform-style规定被嵌套元素如何在3D空间中显示。
perspective规定3D元素的透视效果。
perspective-origin规定3D元素的底部位置。
backface-visibility定义元素在不面对屏幕时是否可见。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值