我是靠谱客的博主 舒适热狗,最近开发中收集的这篇文章主要介绍css(11.2-11.26),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

  • 在head中
  • 添加css 新建一个style标签
  • ctrl+/ 注释
  • span{ color font-size font-famil style }
  • span 标签名选择器 对body中所有的span做样式修改 color:;字体颜色 font-size字体大小默认16像素 font-family设置字体样式 逗号隔开从字体库中选择 font-style设置字体风格 font-weigh 字体粗细 默认normal/400px 范围100-700px
  • i{font-style:normal;} i标签字体恢复默认
  • div{
  • width: 500px;
  • height: 500px;
  • background: chocolate;
  • /* 设置宽、高、背景颜色 */
  • }
  • 以上为 head中style内 的 设置 head中有的 body中必须有
  • 三种引入方式
  • <div style='width: 200px;height: 200px;background-color: blue;'>
  • </div>
  • <!--第一种方式 直接在标签里边写style 主要分号隔开 内联样式 -->
  • div{ width: 200px; height: 200px; background:chocolate; }mm
  • 第二种方式 写在head里面 style中的div属于内部样式
  • <link rel="stylesheet" href="./index.css">
  • <!-- 第三种方式 外部样式 新建一个index.css文件 在head中使用link标签引入herf中写路径 -->
  • 选择器(写在head中的style里)
  • 通配符选择器 *{} 选择页面中所有的
  • 标签名选择器 标签{} 此标签下所有的
  • id选择器 为body中需要修改的标签设置id #id名{} 为该标签进行修改 一个标签只能有一个id名
  • class选择器 (类名选择器).sizeA{} 一个标签可有多个类名 用空格隔开 例body中 <p class="sizeA colorB">我是一个p标签</p> p.fontA 选择类名为fontA的p标签
  • 后代选择器 选择div里边的span 空格 是一种包含关系 div span{ } 子元素选择器只选择儿子div>span{ }
  • 并集选择器 逗号隔开即选择p也选择span p,span { }
  • 外边距
  • margin ="100px" margin 只有一个值 即对上下左右都是100px的距离 设置两个值 第一个为上下的距离 第二个为左右的距离 设置三个值 第一个为上 第二个为左右 第三个为下 的距离 设置四个值的时候 分别对应的是 上右下左四个方向的距离
  • margin-top/bottom/left/right margin-方位词上下左右 设置单独一个方向的外边距
  • 边框
  • border:1px solid green; 边框 复合属性 复合了边框的宽度 风格 和颜色
  • border-方位词-width:10px; 方位边框的宽度
  • border-方位词-style: dotted; 方位边框的风格 solid实线 dashed 虚线 dotted点状线
  • border-方位词-color: indigo; 方位 边框的颜色
  • transparent 透明 将不需要的边框 颜色设置成透明
  • 设置边框角度 border-radius:px/%;(>100px 或者 50%即为圆) 某个角的圆角 (以右上角为例) border-top-right-radius: 30px; 右上角的圆角度 border-radius 只设置一个值即对上下左右四个方向的值一起设置 两个值是第一个为左上右下第二个值是右上左下 设置三个值是第一个为左上 第二个为右上左下 第三个为右下 border-radius四个值是按照 左上 右上 右下 左下的顺序进行边角设置
  • border(三角形篇)
  • width: 0px;
  • height: 0px;
  • border-left: 50px solid tomato;
  • border-top: 50px solid red;
  • border-left: 50px solid transparent;
  • border-top: 50px solid transparent;
  • transparent 透明 将不需要的边框 颜色设置成透明
  • 字体属性的设置
  • 字体颜色
  • 1、颜色的单词 red green。。。 2、十六进制颜色 #000.。。 3、css颜色内置函数 rgb三原色red红 green绿色 取值范围0-255 例:rgb(111, 136,198) 4、css提供的颜色函数 rgba alpha透明 取值0-1 0 完全透明 1 完全不透明 0.6可直接写.6 例:rgb(111, 136,198,.6) /例:rgb(111, 136,198 ,0.6) */
  • 字体大小
  • font-size:2em 默认字体大小为16px 可以把单位改成em 1em=1个字体大小
  • 字体粗细
  • font-weight: 700px; 取值范围 100-900px
  • 字体风格
  • font-family
  • 文本对齐方式
  • text-align: center; 设置文本对齐方式 center居中 right右对齐 left左对齐 justify两端对齐
  • 文本装饰
  • text-decoration: underline; decoration 装饰 设置文本装饰 none没有效果 underline下划线 line-through删除线 overline 上划线
  • 字间距
  • letter-spacing: 10px; / word-spacing: 10px;
  • 行高(行间距)
  • line-height: 50px; 设置行高 1、写 px;2、直接写一个数字(文字大小的倍数) 注意:行高要大于字体大小
  • 溢出
  • overflow 超出部分 溢出 属性有visible可见(默认) hidden隐藏 scroll 滑动(有滚动条)内容>div高 xy轴都会出现滚动 auto自动超过的边才会有滚动条
  • overflow-x/y 可以单独控制x/y轴一个方向上的溢出
  • white-space: nowrap; 空白符处理 normal 正常 不处理 nowrap 不换行 pre 和pre标签一样的特性(保留原有的输入效果)
  • text-overflow: ellipsis; 超出部分省略号显示 ellipsis 省略号
  • 单行文本溢出显示省略号核心语句
  • 1、overflow:hidden; (顾名思义超出限定的宽度就隐藏内容)
  • 2、white-space: nowrap; (设置文字在一行显示不能换行)
  • 3、text-overflow: ellipsis;(规定当文本溢出时显示省略符号来代表被修剪的文本)
  • 多行文本溢出显示省略号核心语句
  • 1、-webkit-line-clamp:2; (用来限制在一个块元素显示的文本的行数,2表示最多显示2行。 为了实现该效果,它需要组合其他的WebKit属性)
  • 2、display: -webkit-box; (和1结合使用,将对象作为弹性伸缩盒子模型显示 )
  • 3、-webkit-box-orient:vertical;( 和1结合使用 ,设置或检索伸缩盒对象的子元素的排列方式 。)
  • 4、overflow:hidden; (顾名思义超出限定的宽度就隐藏内容)
  • 5、text-overflow: ellipsis;(规定当文本溢出时显示省略符号来代表被修剪的文本)
  • 元素的显示模式
  • <!-- 页面 流式布局 从左到右 从上到下 -->
  • 显示模式 分为三种 1、行元素 (inline)a span b i img 等 行元素特点:1.不独占一行(宽高是有内容决定的) 2.替换元素img 可以设置宽高 外边距 四个方向都可以用 非替换元素 span a b i 不可以设置宽高 外边距只有左右可用上下边距没有效果 3.布局 从左到右 2、块元素(block) h1-h6 div main p 等 块元素特点:1.独占一行 2.可以设置宽高 3.如果不设置宽高 宽会继承父元素 高由内容堆砌得到 3.布局 从上到下 3、行内块(inline-block) input button 行内块特点: 1.不独占一行 2.可以设置宽高 3.布局 从左到右-->
  • <!-- (body中)可以通过查看元素找到元素中的显示模式 display属性 -->
  • 切换显示模式
  • <!--行元素和行内块 产生间隙的原因是编译器里边的空格和换行 被浏览器解析成了一个空格 -->
  • <!-- 解决办法 1.标签连写<div></div><div></div> 可读性差 不建议使用 2.给元素设置外边距 -5px左右 3.常用方法 1.加父元素 2.给父元素设置字体大小为0 3.给元素设置字体大小-->
  • 图片间隙
  • <!-- 图片产生间隙的原因是 基准线的问题-->
  • <!-- 解决办法(head中style里添加) 1.改为块标签 display:block
  • 2. vertical 垂直 align 对齐 对于块标签不起作用 用top bottom middle 只要不是baseline都可以 -->
  • 定宽居中
  • 定宽居中针对块元素 写在head中style的div里
  • margin: 0 auto; 外边距上下为0 左右自动
  • text-align: center; 文本居中
  • line-height: 100px; 行高=div的高
  • 内边距
  • 页面中显示的大小 = 内边距 + 边框 +内容大小
  • padding 内边距
  • 选择器补充
  • 属性选择器
  • a[target]{ } 选择带有target属性的a标签
  • a[target='_blank']{ } 找到特定带有某个值的元素
  • a[target~=test]{ } ~=表示包含某个属性值
  • a[target|='atest']{ } |= 表示以某个单词开头的元素
  • 超链接的伪类选择器 伪类选择器用于向标签加一些特殊的效果 (爱恨原则 LoVe HAte 需要同时出现时要满足这个原则 否则会出现问题 L指link V指visited H指 hover A指active)
  • a:link{ } 正常情况下 未访问状态下
  • a:hover{ } 鼠标悬停时显示的颜色 一般情况下只用hover*
  • a:visited{ } 访问过后颜色
  • a:active{ } 激活 当鼠标按下没有松开的时候显示的颜色
  • 浏览器里的超链接不显示hover设定颜色 是因为已经访问过该网址 换网址即可成为设定颜色
  • 首行缩进
  • text-indent: 2em /32px; 首行缩进多少个字 就是多少em/多少倍字大小倍的 px
  • 盒子模型
  • box-sizing: border-box; 为边框创建盒子模型使所有内容在所设宽高之内
  • 外边距合并(外边距合并(塌陷问题) 1.父子关系 2.父子关系)
  • 兄弟关系 外边距重合时取最大值
  • 父子关系 外边距合并时一定是在父元素里边(style中的父元素) 若想让子元素移动 父元素无变化 1.在父元素中添加overflow:hidden 方法2.在父元素中添加border:1px solid green
  • 伪类选择器(结构性伪类选择器 : 单个冒号的都称为伪类选择器 )
  • nth-child 只考虑类型不考虑第几个
  • div p:nth-child(1){ } 找到div中 第(括号中数字个)一个子元素为p的
  • div p:nth-last-child(1){ } 找到div中 最后一个子元素为p的 找到倒数第几个 若最后一个不是p标签 则没有效果
  • nth-of-type 只考虑类型 不考虑子元素
  • div span:nth-of-type(1) { } div中 第一个为span的子元素
  • div span:nth-last-of-type(1) { } div中 最后一个为span的子元素
  • nth-child() nth-of-type() 括号里面除了可以写数字 还可以写公式
  • div :first-child{ } 第一个元素
  • div :last-child{ } 最后一个元素
  • div :nth-child(2n){ } 偶数个
  • div :nth-child(-n+2){ } 前两个 前几个就是 -n 加几
  • div :nth-child(n+5) { } 第五个开始至最后一个 n+几就是大于等于第几个 从那开始后面的
  • 背景图片和插入图片
  • 背景颜色的两种写法 background-color: rosybrown; background: rosybrown;
  • 背景图片的两种写法 background-image: url('./酷我美女.jpg'); background: url('./酷我美女.jpg'); (当图片大小小于div时 会出现背景图片平铺(出现多个图片铺满div)) 解决办法是为 background设置是否平铺 no-repeat;不平铺 repeat-y y轴平铺 repeat-x x轴平铺
  • 背景图片的位置 1.数值 单位px 2.百分比 % 3. top bottom left right center 方位词
  • background-position: 20px; 一个值表示水平方向 垂直方向默认center
  • background-position: 20px 10px; 两个值时 第一个表示水平方向 第二个表示垂直方向
  • background-position: top ; 设置一个值 垂直方向默认center
  • 背景图片大小
  • 像素值 background-size: 200px 200px;
  • 百分比 background-size :100% 100%; 自身大小(宽高)的百分比
  • background-size: 230px; 只写一个值表示水平方向 垂直方向等比缩放
  • background-size:contain; contain 包含 把背景图片包含在div里面 是一个方向占满(哪个方向数值大那个方向占满 例:宽>高 则横向占满 反之纵向占满)
  • background-size:cover; cover 覆盖 等比缩放 会出现图片显示不完全
  • 背景图片的固定
  • background-attachment: fixed; attachment 依附 fixed固定 固定图片位置 使图片不移动
  • 伪元素选择器
  • 伪类 完成一些效果 伪元素 没有在bom树上的一些效果 伪类与伪元素的区别 伪类 : 伪元素是 : :
  • div::before{ } 前缀 紧随标签 一般和content一起使用 可以设置字体大小 字体颜色
  • div::after{ } 后缀
  • ::first-letter 第一个字 若是英文则为第一个字母 ::first-letter只能选中 display值为 block inline-block list-item table-caption table-cell 的
  • css优先级
  • css中的样式 跟书写的顺序无关 和权重有关 按照 通配符 【*{}】<标签名 【例 div{}】< 类名 【class】< id < 内联 < style中样式后加 !important
  • 选择器 权重 内联样式 1000 id 100 类名 伪类 属性选择器 10 标签名 伪元素 1 空格 > + ~ 没有权重 一般情况下权重是累加的
  • 继承性
  • 继承过来的 权重为0 a标签本身自带颜色 不继承字体颜色
  • css 层叠性
  • css层叠性 跟顺序有关 同个样式多次设置时 显示后设置的样式
  • 负责页面结构的标签
  • <header>头部标签</header>
  • <nav>导航部分</nav>
  • <main>主要内容</main>
  • <section>部分内容</section>
  • <aside>侧边栏</aside>
  • <article>文章</article>
  • <footer>底部</footer>
  • 鼠标样式
  • cursor 光标 default 默认样式
  • cursor 光标 pointer 小手
  • cursor 光标 move 移动
  • cursor 光标 text 文本
  • cursor 光标 zoom-in 放大
  • cursor 光标 zoom-out 缩小
  • cursor 光标 url( '',auto)自定义 自定义的时候尽量选择32*32大小的图片 如果不是自定义的时候一定要在后面加auto 如果图片不能显示 则自动显示文本
  • cursor 光标 not-allowed 禁用
  • 元素的显示与隐藏
  • 三种隐藏方法 第一种 display 为none 不占用原来的位置 若想恢复将属性值改为inline-block 第二种 visibility: hidden; hidden隐藏 visiblity可见 位置保留 视觉上隐藏 第三种 opacity: 0; 设置透明度0不可见 1可见 占用原来位置 视觉上隐藏
  • 定位 (定位分为 静态定位 绝对定位 相对定位等 使用定位是为了改变元素的位置) position位置
  • static 静态定位
  • 所有的元素信息默认都是静态的 静态定位下 设置的 方位词( top bottom left right)都是无效的
  • relative 相对定位
  • 相对的是他本身的位置 设置的方位词( top bottom left right)都是有效的 不设置方位词位置的情况下相对定位位置还是在原来的地方 移动过后本身位置是不被占用的 相对定位在不设置宽的时候继承父元素的宽(高由内容决定)
  • absolute 绝对定位
  • 脱离了原来的文档流 原来的空间被占用了 不设置宽的时候 也不会再去继承父元素 需要手动设置宽的大小
  • fixed 固定定位
  • 原有位置被占据 脱离文档流 相对于浏览器的窗口不是父元素也不是body 宽不在继承父元素要么是被内容撑开 要么设置大小
  • sticky粘性定位
  • 需要设置定位的值 在阈值范围内 是相对定位(滚动的) 之后为固定定位 不属于w3c标准
  • 锚点定位
  • <a href="#four">跳转第四部分</a> <a href="#four">跳转第四部分</a> 跳转到某个位置 使用 id选择器
  • 使用绝对定位改变属性的display值
  • 使用绝对定位 可以改变元素的display值 行元素需要设置行高的时候可以通过添加绝对定位 不再去改变它的display为inline-block 或者block
  • 利用绝对定位使元素居中
  • 实现水平垂直居中 方法一

  • 设置水平垂直居中 方法二 (必须有宽)

  • 堆叠等级
  • 激活元素堆叠等级z-index 它的值越大显示的越靠近眼睛
  • 阴影 box-shadow
  • box-shadow 阴影 第一个值控制x轴方向 第二个值控制y轴方向 第三个值控制的模糊的距离 第四个控制阴影的扩散长度 第五个值控制阴影的颜色 第六个值设置内外阴影 默认outset外阴影 inset内阴影
  • 轮廓线
  • outline: none; 点击时外轮廓消失
  • 2d变形 平移 旋转 缩放 斜切

  • transform: translate(200px , 100px); 平移第一个值 x轴 第二个值y轴 也可以设置单独一个方向上的平移
  • transform: rotate(60deg); 旋转 默认60deg 可以写负值
  • transform-origin:50% 100%; 旋转点 默认旋转点 transform-origin:50% 50%;
  • transform: scale(1.5,2);放大缩小 一个值为两个方向缩放相同倍数 两个值第一个是x轴方向 第二个是y轴方向 可以写小数 0.几可以直接缩写为.几(例如0.6 可简写为.6)
  • transform: skew(30deg); 斜切 写一个值 默认x轴方向 两个值第一个是x轴方向 第二个是y轴方向
  • 过渡 css过渡从有到无或从无到有
  • transition过渡的时间 例: transition: all 3s;所有过渡时间都是3s 可以单独设置
  • transition-duration: 2s; 过渡的时间
  • transition-timing-function: linear; 运动曲线 linear 匀速
  • 动画

  • animation-name: change; /* 动画名称 */
  • animation-duration: 5s; /* 动画持续的时间 */
  • animation-timing-function: linear; /* 动画的运动曲线 linear匀速 */
  • animation-delay: 2s; /* 动画延迟开始的时间 可选*/
  • animation-iteration-count: infinite; /* 动画的执行次数 infinite无数 无限循环*/
  • animation-direction: alternate; /* 是否轮流播放动画 (可选) */
  • animation-fill-mode: forwards; /* 动画结束时的状态 默认回到开始状态*/
  • animation动画的属性 name名字要和 @keyframes一起使用 animation-name: change;( 或者@keyframes+没名字 { } ) 动画名称 duration时间 animation-duration: 5s;动画持续的时间timing-function 动画的运动曲线 linear匀速 delay延迟 animation-delay: 2s;动画延迟开始的时间(可选) iteration-count执行次数 animation-iteration-count: infinite; 动画的执行次数 infinite无数 无限循环 direction轮播 animation-direction: alternate;是否轮流播放动画 (可选) fill-mode;结束时状态 animation-fill-mode: forwards; 动画结束时的状态 默认回到开始状态
  • 动画写法

  • 浮动
  • 浮动特点 1、脱离文档流 2、原来位置被占据 3、可以改变元素的display属性
  • 清除浮动 前两种不建议使用
  • 第一种 隔墙法 body中加块标签 设置clear:both
  • 第二种 父元素加overflow:hidden
  • 第三种伪元素清除.clearfix::after{ content: '' ; display: block; clear: both; } 为了兼容 ie 567 低版本ie浏览器 低版本不支持::after 所以增加zoom:1; .clearfix::after{ *zoom: 1 ; }
  • 第四种 双伪元素 .clearfix::before, .clearfix::after{ content: ''; display: block; clear: both; }
  • 图片文本对齐
  • vertical-align: middle; /* 中间对齐 */
  • vertical-align: top; /* 上对齐 */
  • 精灵图片

  • div{ width: 80px; height: 80px; background: url('./icons.jpg'); background-position: 34% 50%; }
  • 使用精灵图片的原因 1. 减少图片字节 2. 把多张图片减少到一张上面 减少http请求 优化页面 3. 减少图片命名 解决命名困难的问题 4. 解决更换风格的问题
  • 图标网址
  • 1. iconfont-阿里巴巴矢量图标库 使用方法:加入购物车 下载图片或代码 link引入文件夹 文件夹中的h5 文件复制(例)<span class="icon iconfont">&#xf0179;</span> 至body中
  • 2. Font Awesome,一套绝佳的图标字体库和CSS框架 使用方法1: 直接引用 <link href="https://netdna.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet"> body中写<i class=" fa (固定) fa-address-book-o (所需图标名) fa-2x (放大倍数) "></i>
  • 弹性布局
  • 弹性布局 设为flex布局后,子元素的float、clear和vertical-align属性失效 但是position属性依旧生效
  • 弹性布局属性 flex-direction 控制主轴方向

  • 主轴是x轴交叉轴是y轴 1. flex-direction 控制主轴方向(控制起点的位置和方向) row 默认值 主轴为水平方向起点在左边 row-reverse主轴为水平方向起点在右边 column主轴为垂直方向,起点在上沿 column-reverse主轴为垂直方向,起点在下沿 2. flex--wrap 属性默认情况下都在一条线上(控制换行方式) nowrap(默认)不换行 wrap换行 第一行在上面 wrap-reverse 换行第一行在下面 3. flex-flow 是控制起点和换行的复合属性 4. justify-content控制对齐方式 flex-start控制左对齐(默认) center控制居中 flex-end;控制右对齐 space-between控制两端对齐 space-around控制间隔 控制div两端间隔相等 由于叠加所以两div中间间隔是单侧间隔两倍 5. align-items 设置y轴(交叉轴)如何对齐 flex-start交叉轴的起点对齐 flex-end交叉轴的终点对齐 center交叉轴的中点对齐 baseline项目的第一行文字的基线对齐 stretch(默认值)如果项目未设置高度或者设为auto 将占满整个容器即body的高度
  • 文本

  • calc 计算
  • 可算加减乘除 可以对不同单位的进行计算 calc(+-*/)运算时符号左右两边都需要有空格 (加减时必须要有空格 无空格会被默认成正负号 乘除时不必须加空格 但建议使用) 例:calc(2px + 3px) 可以括号里面嵌套括号 即 calc(200* calc(3+2))

最后

以上就是舒适热狗为你收集整理的css(11.2-11.26)的全部内容,希望文章能够帮你解决css(11.2-11.26)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(30)

评论列表共有 0 条评论

立即
投稿
返回
顶部