资讯专栏INFORMATION COLUMN

css-secrets (css揭秘) 知识点目录,值得深入学习!

DevWiki / 1252人阅读

摘要:通过模糊来弱化背景和滚动提示使用两层背景,控制交互式的图片对比控件范围输入控件方式书中有很详细的解答提醒自己要回顾。

1. 第一章

css编码技巧

第二章 边框与背景

半透明边框
hsla

多重边框
box-shadow outline

灵活的背景定位
background-position css3该属性可以指定偏移量,////background-origin 指定背景图片相对于哪一个角进行偏移,和padding搭配使用////calc()方法的使用,calc(100% - 偏移量) 搭配background-position使用

边框内圆角
一个元素box-shadow outline 结合使用 注意: 大小问题,勾股定理////两个元素可以通过背景色出效果

条纹背景

linear-gradient background-size 搭配使用////倾斜条纹使用repeating-lineat-gradient////灵活的同色系条纹,background和background-image搭配使用

复杂的背景图案

(1)网格中的方格用background和background-image, background-size搭配使用,background-image中有多个line-gradient 以逗号分隔,搭配使用,/////

(2)类似于辅助线,background、background-image和background-size搭配使用

//////(3)波点 background和background-image, background-size、background-position 搭配使用,可以利用两个叠加形成更好看的/////


(4)棋盘,使用三角形拼接形成

伪随机背景

background和background-image, background-size搭配使用, 蝉原则,根据质数设置background-size,

连续的图像边框

两种方法

上述方法可以衍生出“蚂蚁行军”

!!注意斜纹变虚线,理解background-position百分比的含义;

顶部边框裁切

第三章 形状

自适应的椭圆


半椭圆

四分之一椭圆

平行四边形


这种情况内容也会被旋转,不符合设计要求!
解决办法: 使用伪元素


菱形图片:

使用强大的clip-path属性,点对应的连线就是变换的图形;

切角效果

无弧形切角

弧形切角:

颜色比较突兀,为了明显,有点丑哈哈!

内联svg与border-image方案:
之后补充,
裁切路径方案: 使用clip-path()属性;

梯形标签页



简单的饼图 css或者svg方法,更推荐svg方法

第四章 视觉效果

单侧阴影 理解box-shadow的几个参数的含义

邻边阴影
双侧阴影,以上阴影均利用四个值进行实现,并且可以有多个阴影,以逗号分隔;

不规则阴影: 解决有箭头,虚线边框,或者折角的图形阴影。

使用filter: drop-shadow() 里面的参数和box-shadow一样,只是没有阴影尺寸和inset,且不能用逗号分开,filter: blur() grayscale() drop-shadow();滤镜可以串联使用;

染色效果 (图片的饱和度变化)

基于滤镜的方式:filter: sepia(1) saturate(4) hue-rotate(295deg);可以有动画效果,
基于混合模式: mix-blendmode 可以为整个元素设置混合模式, background-blend-mode 可以为每层
背景多带带指定混合模式。 前者需要将图片包裹在div中,向上包裹元素混合!后者需要将图片作为背景图片,向下背景元素混合,且无动画效果!
三种方法各有利弊!

毛玻璃效果

使用伪元素和filter属性完成

折角效果

使用伪元素和渐变完成,

第五章 字体排印

连字符断行 hyphens: auto;

插入换行: 使用伪元素的content: "A" 和white-space:pre; 搭配使用,

文本行的斑马条纹:background-size: auto 3em;

background-origin: content-box;
background-image: linear-gradient(rgba(0,0,0,.2) 50%,
transparent 0);三者结合使用,单位设置为em,可以使条纹宽度随着文字大小的变化而变化

调整tab的宽度: 利用tab-size属性,用于解决展示代码或者原样输出

连字:font-variant-ligatures: common-ligatures

no-discretionary-ligatures
no-historical-ligatures; 使用此属性解决问题

华丽的& 符号:@font-face {

font-family: Ampersand;
src: local("Baskerville-Italic"),
local("GoudyOldStyleT-Italic"),
local("Palatino-Italic"),
local("BookAntiqua-Italic");
unicode-range: U+26;
}
h1 {
font-family: Ampersand, Helvetica, sans-serif;
}

自定义下划线:

background: linear-gradient(gray, gray) no-repeat;
background-size: 100% 1px;
background-position: 0 1.15em;
text-shadow: .05em 0 white, -.05em 0 white;
使用此方法生成下划线

现实中的文字效果:
凸版印刷效果:background: hsl(210, 13%, 60%);

color: hsl(210, 13%, 30%);
text-shadow: 0 1px 1px hsla(0,0%,100%,.8);
空心字效果: 使用svg(推荐) 或者使用text-shadow
文字外发光效果:filter: blur() 或 text-shadow
文字凸起效果: 阴影逐渐加深,用mixin设置
环形文字: 利用svg

第六章 用户体验

选用合适的鼠标光标

扩大可点击区域

自定义复选框

开关式按钮,谨慎使用

通过阴影弱化背景,相当于添加蒙层,(1)使用伪元素,但是无法捕获点击事件,阻止鼠标交互(2)box-shadow;box-shadow: 0 0 0 50vmax rgba(0,0,0,.8);不阻止鼠标交互,而且配合固定定位使用,或者在没有滚动条的页面中使用。(3)dialog::backdrop {

background: rgba(0, 0, 0, .8);
}

通过模糊来弱化背景:box-shadow和filter

滚动提示 :使用两层背景,控制

交互式的图片对比控件:

范围输入控件方式:书中有很详细的解答!提醒自己要回顾。

第七章 结构与布局

自适应布局 width: min-content

表格的自适应宽度 table {

table-layout: fixed;
width: 100%;
}

根据兄弟元素的数量来设置样式: li:only-child {

/ 只有一个列表项时的样式 /
}

根据兄弟元素的数量范围来匹配元素: nth-child(2n+1));;n+b 这种形式的表达式可以选中从第 b 个

开始的所有子元素。 举例来说, :nth-child(n+4) 将会选中除了第一、 二、
三个子元素之外的所有子元素

满幅的背景,定宽的内容:footer {

padding: 1em;
padding: 1em calc(50% - 450px);
background: #333;
}三行代码解决,calc()函数的用处真多!

垂直居中: (1)基于绝对定位的解决方法:main {

position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
} transfrom基于自身的宽高进行百分比计算
(2)基于视口单位,但有限,只能使用在视口中main {
width: 18em;
padding: 1em 1.5em;
margin: 50vh auto 0;
transform: translateY(-50%);
}
(3) 基于flexBox解决方案,很推荐,body {
display: flex;
min-height: 100vh;
margin: 0;
}
main {
margin: auto;
} flex和margin: auto;结合使用,并且上下和左右都会居中;;;或者使用main {
display: flex;
align-items: center;
justify-content: center;
width: 18em;
height: 10em;
} 此中运用了justify-content属性和align-items属性

紧贴底部的页脚 使用flex

# 第八章 过渡与动画

缓动动画

未完,两天后会更新完全,有些地方也比较粗略,后期再看一遍的时候进行补全!

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/117562.html

相关文章

  • 个人分享--web前端学习资源分享

    摘要:前言月份开始出没社区,现在差不多月了,按照工作的说法,就是差不多过了三个月的试用期,准备转正了一般来说,差不多到了转正的时候,会进行总结或者分享会议那么今天我就把看过的一些学习资源主要是博客,博文推荐分享给大家。 1.前言 6月份开始出没社区,现在差不多9月了,按照工作的说法,就是差不多过了三个月的试用期,准备转正了!一般来说,差不多到了转正的时候,会进行总结或者分享会议!那么今天我就...

    sherlock221 评论0 收藏0
  • 那些年,我的前端/Java后端书单

    摘要:全文为这些年,我曾阅读深入理解过或正在阅读学习即将阅读的一些优秀经典前端后端书籍。当然,如果您喜欢这篇文章,可以动手点点赞或者收藏。 全文为这些年,我曾阅读、深入理解过(或正在阅读学习、即将阅读)的一些优秀经典前端/Java后端书籍。全文为纯原创,且将持续更新,未经许可,不得进行转载。当然,如果您喜欢这篇文章,可以动手点点赞或者收藏。 基础 基础书籍 进阶 进阶阶段,深入学习的书...

    fxp 评论0 收藏0
  • 那些年,我的前端/Java后端书单

    摘要:全文为这些年,我曾阅读深入理解过或正在阅读学习即将阅读的一些优秀经典前端后端书籍。当然,如果您喜欢这篇文章,可以动手点点赞或者收藏。 全文为这些年,我曾阅读、深入理解过(或正在阅读学习、即将阅读)的一些优秀经典前端/Java后端书籍。全文为纯原创,且将持续更新,未经许可,不得进行转载。当然,如果您喜欢这篇文章,可以动手点点赞或者收藏。 基础 基础书籍 进阶 进阶阶段,深入学习的书...

    Tecode 评论0 收藏0
  • 那些年,我的前端/Java后端书单

    摘要:全文为这些年,我曾阅读深入理解过或正在阅读学习即将阅读的一些优秀经典前端后端书籍。当然,如果您喜欢这篇文章,可以动手点点赞或者收藏。 全文为这些年,我曾阅读、深入理解过(或正在阅读学习、即将阅读)的一些优秀经典前端/Java后端书籍。全文为纯原创,且将持续更新,未经许可,不得进行转载。当然,如果您喜欢这篇文章,可以动手点点赞或者收藏。 基础 基础书籍 进阶 进阶阶段,深入学习的书...

    VPointer 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<