css3用法

选择器

p:first-child   // <p>是父级第1个子级
p:last-child   // <p>是父级倒数第1个子级
p:nth-child(n) // <p>是父级第n个子级
p:nth-last-child(n) // <p>是父级倒数第n个子级
p:nth-child(odd)    // 奇数
p:nth-child(even)   // 偶数

p:first-of-type     // <p>是父中第一个p
h1:last-of-type     // <h1>是父中最后一个h1
p:nth-of-type(n)
p:nth-last-of-type(n)

渐变色

/* 线向渐变 linear-gradient */
div {
    background-image: linear-gradient(#e66465, #9198e5);
}

/* 径向渐变 */
div {
    background-image: radial-gradient(red, yellow, green);
}

transform

/* 2D平移 translate(x, y) */
div {
    transform: translate(10px, 10px);   /* 向右10px,向下10px */
}

/* 2D旋转(顺时针) rotate(angle) */
div {
    transform: rotate(90deg);   /* 顺时针90度 */
}

/* 2D缩放 scale(x, y) */
div {
    transform: scale(2, 3);     /* 宽度扩大2倍,高度扩大3倍 */
}

/* transform-origin 缩放基点 */
div {
    transform-origin: x-axis y-axis z-axis;
    transform-origin: 0% top;
}

/* 2D拉伸 skew(x-angle, y-angle) */
div {
    transform: skew(30deg, 20deg);
}

/* 3D平移 translate3d(x, y, z) */
div {
    transform: translate3d(50px, 50px, 50px);
}

/* 3D旋转 rotate3d(x, y, z, angle) */
div {
    transform: rotate3d(1, 0, 0, 30deg);
    transform: rotateX(30deg);  /* 等同于 */
}

/* 3D缩放 scale3d(x, y, z) */
div {
    transform: scale3d(2, 3, 3);
}

/* 3D perspective,作用在父元素,取0-500,可以制造3D效果 */
div {
    perspective: 150;
}

/* 3D perspective-origin,需要与perspective配合才生效 */
div {
    perspective: 150;
    perspective-origin: 10% 10%;
}

过渡动画 transition

div {
   width: 100px;
   height: 100px;
   transition: width 2s, height 2s, transform 2s;
}
div:hover {
    width: 200px;
    height: 200px;
    transform: rotate(180deg);
}

动画 animation

/* 定义动画 */
@keyframes myfirst {
    0% {
        background: red;
    }
    100% {
        background: yellow;
    }
}
/* 应用动画 */
div {
    animation: myfirst 5s linear 2s 1|infinite alternate forwards;
    animation: name duration timing-function delay iteration-count direction fill-mode play-state;
    /* 名字 持续时间 速度 开始前延迟时间 播放次数 奇正偶反播放 动画完成后状态(保持结束后状态)*/
}

calc 计算

div {
    calc(100% - 50px)
}

文字...显示

/* 单行 */
div {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
/* 多行 */
div {
    height: 168rpx;     /* 需要有高度 */
    word-break: break-all;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;  /* 总行数 */
    overflow: hidden;
}

滚动条(高版本浏览器才支持)

// 隐藏滚动条
div::-webkit-scrollbar {
    width: 0;
    height: 0;
}

滤镜

div {
    filter: blur(15px);     // 模糊处理
    filter: grayscale(50%); // 灰度
}

蒙层

div {
    // 注意:透明的地方显示空白,非透明会显示,与常规理解相反
    -webkit-mask-image: linear-gradient(0deg, rgba(0,0,0,1) 50%, rgba(0,0,0,0) 90%);
}

鼠标点击穿透

div {
    pointer-events: none;
}

瀑布流

.wrap {
    column-count: 3;    // 列数
    column-gap: 20px;   // 列间距
}
.item {
    break-inside: avoid;    // 不知道什么原理
}

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值