一语道破CSS3(二)

2024-02-24 04:40
文章标签 frontend css3 一语道破

本文主要是介绍一语道破CSS3(二),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述

  • CSS背景:CSS允许使用纯色作为背景,也允许使用背景图创建相当复杂的效果
属性描述
background-color设置背景颜色
background-image以图片做背景
background-repeat设置的背景图片是否及如何重复
background-position设置背景图片的起始位置
background-attachment背景图像是否固定或随页面其余部分滚动
background-size规定背景图片的尺寸
background-origin规定背景图片的定位区域
background-clip规定背景的绘制区域

(1)padding:设置内边框,如:padding: 10px;
(2)background-position属性:如果设置属性值right,就默认从右上角,而且从照片的中间开始显示。我们可以这样改变:right top;。这个属性也可以直接使用坐标,如:0px 0px。
(3)background-attachment属性:默认随页面动。fixed属性值随页面动,

  • CSS文本:可以改变文本颜色、字符间距、对齐文本、装饰文本、文本缩进
属性描述
color *文本颜色
direction文本方向
line-height行高
letter-spacing字符间距
text- align *文本的对齐方式
text-decoration向文本添加修饰
text-indent缩进元素中文本的首行
text-transform处理元素中的字母
unicode-bidi设置文本方向
white-space元素中空白的处理方式
word-spacing字间距

(1)text-indent属性:属性值可以是:2em。em是字符。

  • CSS字体:定义文本的字体的大小,类型等
属性描述
font-family设置字体系列
font-size设置字体的尺寸
font-style设置分风格
font-weight设置字体粗细
  • 链接:使用text-decoration:none;去掉链接的下划线。
  • CSS轮廓:主要是突出元素的作用。就是给内容加一个框框。
属性描述
outline设置轮廓属性
outline-color轮廓颜色
outline-style设置轮廓样式
outline-width设置轮廓宽度
  • CSS定位:改变元素在页面上的位置。
    (1)CSS定位机制:
    1. 普通流:元素按照其在HTML中的位置顺序决定排布的过程。
    2. 浮动:
    3. 绝对布局:
属性描述
position把元素故在一一个静态的、相对的、绝对的、或固定的位置中
top元素向上的偏移量
left元素向左的偏移量
right元素向右的偏移量
bottom元素向下的偏移量
overflow设置元素溢出其区域发生的事情
clip设置元素显示的形状
vertical-align设置元素垂直对齐方式
z-index设置元素的堆叠顺序
  • CSS定位属性:
    (1)position属性有四个值:

    1. static:静态布局。没有偏移量。即使设置了。
    2. relative:相对布局。可以设置top,right,left等的偏移量。
    3. absolute:绝对布局。相当于它在页面内不再占有位置。也有偏移量。
    4. fixed:将设置为fixed的元素固定在页面上,不随页面滚动而动。

    (2)z-index:控制那个元素在页面的前面显示(当覆盖时)值大的在前面。相对和绝对布局有可用。

  • CSS浮动:
    (1)float属性:浮动会随容器大小来适应屏幕。

    1. left:元素向左浮动。

    2. right:元素向右浮动

    3. none:不浮动

    4. inherit:从父级继承浮动属性。
      (2)clear属性:清除浮动属性。

    5. left、right:去掉向左向右的浮动

    6. both:左右两侧均去掉

    7. inherit:从父级继承来的clear属性。

  • CSS盒子模型:
    (1)盒子模型概述:

    1. margin:外边距
    2. border:边框
    3. padding:内边距
    4. content:内容

    (2)CSS内边距:内容外部,边框外部。padding-*设置某一边的内边距(left,right,top)。
    (3)CSS边框:

    1. border-style:定义了10中不同的非继承样式。包括none。border-left-style改变左边的样式。
    2. CSS3提供的是三个边框属性:border-radius(圆角边框)、border-shadow(边框阴影)、border-image(边框图片)。

    (4)CSS外边框:围绕在内容边框的区域就是外边距,默认为透明区域。margin。
    (5)CSS外边距合并:两个内容之间的外边距会自动叠加,遵循大的内边距。

  • CSS常用操作:
    (1)对齐操作:

    1. margin:进行水平对齐。如:margin-left auto;。如:margin 0px auto;,前一个是上下,后一个是左右。
    2. position、float:左右对齐。

    (2)尺寸操作:width,height等。

    (3)分类操作:如:clear、display(如何显示,做导航栏)、float、position、cursor(鼠标指针的显示形式)等

    (4)导航栏:使用列表来创建,(text-decoration none;去掉链接的下划线)

    (5)图片操作:opacity,透明效果。取值[0,1]

  • 类选择器和id选择器的区别:
    (1)id是唯一的,class不唯一。
    (2)id选择器不能结合使用
    (3)当使用js时,要使用到id。

2D,3D的转换
过渡
动画
多列

  • 2D、3D转换:通过CSS,我们能够对元素进行移动、缩放、移动、拉长或拉伸,转换是是元素改变形状、尺寸和位置的一种效果。
    (1)2D转换方法:

    1. translate():移动。是transform的属性值。例:
      -webkit-transform: translate(100px);/*支持Chrome浏览器 */,向x,y轴移动的像素。

    2. rotate():旋转。例:
      -webkit-transform: rotate(90deg);,旋转度数

    3. scale():缩放。-webkit-transform: scale(1,2);,宽和高

    4. skew():倾斜度数。向x,y轴倾斜的度数。

    5. matrix():矩阵的效果。

    (2)3D转换方法:

    1. rotateX():
    2. rotateY():
  • CSS动画过度:CSS3过度是元素从一种样式转化成另外一种样式。

CSS3样式:
img{-webkit-transition: width 2s,height 2s,-webkit-transform 2s;/*执行时间*/transition: width 2s,height 2s,transform 2s;transition-delay: 2s;/*延时显示动画*/}
img:hover{width:20%;height: 20%;transform: rotate(350deg);-webkit-transform: rotate(360deg);
}
  • 动画:通过CSS3考验创建动画。
    (1)遵循@keyframes规则:规定动画时长和名称。
div{width: 100px;height: 100px;background-color: aqua;position: relative;/*相对定位*/animation: anim 5s infinite alternate;/*动画执行时间为5秒,并且重复执行*/-webkit-animation: anim 5s infinite alternate;/* 按反方向执行*/}
@keyframes anim {0%{ background-color: darkgray;left: 0px;top: 0px}/*颜色和移动*/25%{background-color: blue;left: 200px;top: 0px}50%{background-color: blueviolet;left: 200px;top: 200px}75%{background-color: red;left: 200px;top: 0px}100%{background-color: black;left: 200px;top: 0px}
}
@-webkit-keyframes anim {/*适配Chrome浏览器*/0%{ background-color: darkgray;left: 0px;top: 0px}25%{background-color: blue;left: 200px;top: 0px}50%{background-color: blueviolet;left: 200px;top: 200px}75%{background-color: red;left: 200px;top: 0px}100%{background-color: black;left: 200px;top: 0px}
}
  • 多列:可以创建多列来对文本或区域进行布局。加线来分裂。也需要适配浏览器。
    (1)属性:
    1. column-count:
    2. column-gap:间距
    3. column-rule:

开发:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><link rel="stylesheet" type="text/css" href="mycss.css">
</head>
<body><div class="container"><div class="wrapper"><div class="heading"><div class="heading_nav"><div class="heading_title">我的第一个web页面</div><div class="heading_navbar"><ul><li><a href="https://blog.csdn.net/qq_44755403">博客首页</a></li><li><a href="https://blog.csdn.net/qq_44755403/article/details/104837072">快速排序</a></li><li><a href="https://blog.csdn.net/qq_44755403/article/details/104383192">C++教程</a></li><li><a href="https://blog.csdn.net/qq_44755403/article/details/104589115">HTML教程</a></li></ul></div><div class="heading_image"><img src="../images/4.jpg" width="3%" height="3%"></div><div class="heading_sopt"><form><input type="text"></form></div></div></div><div class="body"><div class="body_title"><h3>HTML的应用</h3><p>Lorem ipsum dolor sit amet, consectetur adipisicing elit.Blanditiis dignissimos dolores earum minus, nesciunt perspiciatisquas quia, quisquam reprehenderit sapiente suscipit, tenetur?Accusamus assumenda cum est nemo nisi optio quae.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Architectoat esse expedita id laborum, nihil placeat sapiente sequi solutatempore? Ab accusantium dicta hic labore obcaecati perferendisquam quidem saepe.</p></div><hr/><hr/><div class="cube"><div class="box1"><img src="http://129.211.56.163/images/1.jpg" alt="蚁人" class="img3"></div><div class="box2"><img src="http://129.211.56.163/images/2.jpg" alt="女侠" class="img3"></div><div class="box3"><img src="http://129.211.56.163/images/3.jpg" alt="美国队长" class="img3"></div><div class="box4"><img src="http://129.211.56.163/images/4.jpg" alt="全体漫威" class="img3"></div><div class="box5"><img src="http://129.211.56.163/images/5.jpg" alt="雷神" class="img3"></div><div class="box6"><img src="http://129.211.56.163/images/6.jpg" alt="钢铁侠" class="img3"></div></div>
<!--                <div>-->
<!--                    <img src="../images/4.jpg" width="10%" height="10%" align="center" class="img2">-->
<!--                </div>--></div></div><div class="footing">@1139049948</div></div>
</body>
</html>
*{margin: 0px;padding: 0px;
}
body{background-color: azure;
}
.wrapper{width: 80%;height: 1000px;background-color: aquamarine;margin: 0px auto;}
.heading{margin: 0px auto;width: 100%;height: 90px;background-color: aliceblue;
}
.heading_title{float: left;font-family: Arial;font-size: 30px;color: darkorchid;}
.heading_nav{padding-bottom: 30px;padding-top: 30px;width: 100%;height: 30px;position: relative;
}
li{padding-left: 10px;display: inline;/*一行显示*/
}
ul{margin-left: 40px;float: left;list-style: none;padding-top: 6px;padding-bottom: 6px;
}
a:link{font-weight: bold;color: darkgray;text-align: center;padding: 6px;text-decoration: none;/*去掉下化线*/
}
a:hover,a:active{color: black;}
.heading_image img{border-radius: 30px;display: inline;float: right;
}
.heading_sopt form{display: inline;float: right;width: 80px;height: 35px;position: relative;margin-right: 150px;margin-top: 5px;
}
button{float: right;margin-right: 10px;
}
from input{height: 35px;border-radius: 30px;
}
.body_title p{margin-top: 50px;margin-bottom: 20px;}
.body_title h3{font-size: 30px;font-family: Arial;width: auto;color: black;text-align: center;
}/*.img2{*/
/*    position: relative;!*相对定位*!*/
/*    animation: anim 5s infinite alternate;!*动画执行时间为5秒,并且重复执行*!*/
/*    -webkit-animation: anim 5s infinite alternate;!* 按反方向执行*!*//*}*/
/*@keyframes anim {*/
/*    0%{ background-color: darkgray;left: 0px;top: 0px}!*颜色和移动*!*/
/*    25%{background-color: blue;left: 200px;top: 0px}*/
/*    50%{background-color: blueviolet;left: 200px;top: 200px}*/
/*    75%{background-color: red;left: 0px;top: 200px}*/
/*    100%{background-color: black;left: 0px;top: 0px}*/
/*}*/
/*@-webkit-keyframes anim {!*适配Chrome浏览器*!*/
/*    0%{ background-color: darkgray;left: 0px;top: 0px}*/
/*    25%{background-color: blue;left: 200px;top: 0px}*/
/*    50%{background-color: blueviolet;left: 200px;top: 200px}*/
/*    75%{background-color: red;left: 0px;top: 200px}*/
/*    100%{background-color: black;left: 0px;top: 0px}*/
/*}*/.cube{width: 200px;height: 200px;margin: 100px auto;transform-style: preserve-3d;transform: rotateX(45deg) rotateZ(45deg);animation: rotate 20s infinite linear;}.cube>div{width: 200px;height: 200px;opacity: 0.7;position: absolute;}
.img3{width: 200px;height: 200px;vertical-align: top;}
.box1{transform: rotateY(90deg) translateZ(100px);}
.box2{transform: rotateY(-90deg) translateZ(100px);
}
.box3{transform: rotateX(90deg) translateZ(100px);;
}
.box4{transform: rotateX(-90deg) translateZ(100px);;
}
.box5{transform: translateZ(100px);
}
.box6{transform: rotateY(-180deg) translateZ(100px);
}
@keyframes rotate {form{transform: rotateX(0) rotateZ(0);}to{transform: rotateX(1turn) rotateZ(1turn);}
}
.footing{width: 80%;height: 30px;margin: 0px auto;background-color: darkgray;padding-top: 20px;text-align: center;color: black;font-size: 15px;
}

成品展示:
在这里插入图片描述

这篇关于一语道破CSS3(二)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/740973

相关文章

Vue项目中Element UI组件未注册的问题原因及解决方法

《Vue项目中ElementUI组件未注册的问题原因及解决方法》在Vue项目中使用ElementUI组件库时,开发者可能会遇到一些常见问题,例如组件未正确注册导致的警告或错误,本文将详细探讨这些问题... 目录引言一、问题背景1.1 错误信息分析1.2 问题原因二、解决方法2.1 全局引入 Element

详解如何在React中执行条件渲染

《详解如何在React中执行条件渲染》在现代Web开发中,React作为一种流行的JavaScript库,为开发者提供了一种高效构建用户界面的方式,条件渲染是React中的一个关键概念,本文将深入探讨... 目录引言什么是条件渲染?基础示例使用逻辑与运算符(&&)使用条件语句列表中的条件渲染总结引言在现代

详解Vue如何使用xlsx库导出Excel文件

《详解Vue如何使用xlsx库导出Excel文件》第三方库xlsx提供了强大的功能来处理Excel文件,它可以简化导出Excel文件这个过程,本文将为大家详细介绍一下它的具体使用,需要的小伙伴可以了解... 目录1. 安装依赖2. 创建vue组件3. 解释代码在Vue.js项目中导出Excel文件,使用第三

Java实现Excel与HTML互转

《Java实现Excel与HTML互转》Excel是一种电子表格格式,而HTM则是一种用于创建网页的标记语言,虽然两者在用途上存在差异,但有时我们需要将数据从一种格式转换为另一种格式,下面我们就来看看... Excel是一种电子表格格式,广泛用于数据处理和分析,而HTM则是一种用于创建网页的标记语言。虽然两

vue解决子组件样式覆盖问题scoped deep

《vue解决子组件样式覆盖问题scopeddeep》文章主要介绍了在Vue项目中处理全局样式和局部样式的方法,包括使用scoped属性和深度选择器(/deep/)来覆盖子组件的样式,作者建议所有组件... 目录前言scoped分析deep分析使用总结所有组件必须加scoped父组件覆盖子组件使用deep前言

VUE动态绑定class类的三种常用方式及适用场景详解

《VUE动态绑定class类的三种常用方式及适用场景详解》文章介绍了在实际开发中动态绑定class的三种常见情况及其解决方案,包括根据不同的返回值渲染不同的class样式、给模块添加基础样式以及根据设... 目录前言1.动态选择class样式(对象添加:情景一)2.动态添加一个class样式(字符串添加:情

React实现原生APP切换效果

《React实现原生APP切换效果》最近需要使用Hybrid的方式开发一个APP,交互和原生APP相似并且需要IM通信,本文给大家介绍了使用React实现原生APP切换效果,文中通过代码示例讲解的非常... 目录背景需求概览技术栈实现步骤根据 react-router-dom 文档配置好路由添加过渡动画使用

使用Vue.js报错:ReferenceError: “Vue is not defined“ 的原因与解决方案

《使用Vue.js报错:ReferenceError:“Vueisnotdefined“的原因与解决方案》在前端开发中,ReferenceError:Vueisnotdefined是一个常见... 目录一、错误描述二、错误成因分析三、解决方案1. 检查 vue.js 的引入方式2. 验证 npm 安装3.

vue如何监听对象或者数组某个属性的变化详解

《vue如何监听对象或者数组某个属性的变化详解》这篇文章主要给大家介绍了关于vue如何监听对象或者数组某个属性的变化,在Vue.js中可以通过watch监听属性变化并动态修改其他属性的值,watch通... 目录前言用watch监听深度监听使用计算属性watch和计算属性的区别在vue 3中使用watchE

python解析HTML并提取span标签中的文本

《python解析HTML并提取span标签中的文本》在网页开发和数据抓取过程中,我们经常需要从HTML页面中提取信息,尤其是span元素中的文本,span标签是一个行内元素,通常用于包装一小段文本或... 目录一、安装相关依赖二、html 页面结构三、使用 BeautifulSoup javascript