从零开始学前端:程序猿小白也可以完全掌握!—今天你学习了吗?(CSS)


文章目录

  • 从零开始学前端:程序猿小白也可以完全掌握!—今天你学习了吗?(CSS)
  • 前言
  • 第二十二节课:css3新属性scss和less
  • 一、CSS3滤镜属性
  • 二、CSS3计算属性
  • 三、less和sass的概念
  • 四、less和sass的变量
  • 五、less和sass的嵌套
  • 六、less和sass的访问符
  • 七、less的混入
  • 八、sass的混入
  • 九、less和sass的总结
  • 十、HTML5语义化标签


前言

恶性循环,学不会,补习,补习,落下课程,补习~

第二十二节课:css3新属性scss和less

一、CSS3滤镜属性

css3滤镜属性filter:filter属性将模糊或颜色 偏差等图形效果应用于元素。

属性值

作用

blur()

给图片模糊处理,值越大,模糊越大,单位使用px

brightness()

调整图片宽度,值越大亮度越亮,0%全黑,100%图片原本亮度单位使用%

contrast()

函数给图片增加灰度,值越小,灰度越灰,0%全灰,单位%

二、CSS3计算属性

calc():此函数让你在声明CSS属性值时执行一些计算。
适用语法:
with:calc(100%-30px)
calc()使用注意点:
可以混合使用各种单位进行计算;
表达式中有“+”和“-”时,其前后必须要有空格,如“with:calc(12%+5em)”这种没有空格的写法是错误的;
表达式中有“*”和“/”时,其前后可以没有空格,但建议留有空格。

三、less和sass的概念

css具有以下几个缺点:

  1. 语法不够强大,比如无法嵌套书写,导致模块开发中需要书写很多重复的选择器。
  2. 没有变量和合理的样式复用机制,使得逻辑上相关的属性值必须以字面量的形式重复输出,导致难以维护。

但是,CSS预处理器也不是万能的,CSS的好处在于简便、随时随地被使用和调试。预编译CSS步骤的加入,让我们开发工作流中多了一个环节,调试也变得更麻烦了。更大的问题在于,预编译很容易造成后代选择器的滥用。
所以我们在实际项目中衡量预编译方案时,还是得想想,比起带来的额外维护开销,CSS预处理器有没有解决更大的麻烦。

四、less和sass的变量

在less中我们使用“@”符来声明变量。
例如:

@color:blue;
.one{color:@color}

在sass中我们使用“$”符来声明变量。
例如:

$color:blue;
.one{color:$color}

五、less和sass的嵌套

在我们之前写css的话,因为权重的关系我们写的话都需要把后代的选择都选择上,这样就会导致我们每次的css选择器都非常的冗长、繁琐,但是leaa和sass就非常的方便了。
例如:

.one{font:20px}
.one .two{color:pink}

我们可以写成

.one{
	font:20px;
	.two{color:pink}
}

六、less和sass的访问符

.one{width:100px;height:100px;}
.one:hover{background-color:pink}

我们可以通过less和sass可以写成

.one{
 width:100px;height:100px;
 &:hover{backgroung-color:pink}
 }

七、less的混入

我们也可以把一些其他选择器样式混入到另一个选择器当中

.one{color:red}
.two{font:20px;one()}

八、sass的混入

sass的混入和less就有一点不一样了,首先是利用@mixin声明混入的选择器,然后就是利用@include去混入

@mixin roubded-corners{
	boe=rder-redius:5px;
}
.notice{
	background-color:green;
	border:2px solid #00aa00;
	border-radius:5px;
}

九、less和sass的总结

sass和less都属于css预处理器,其基本思想是,用一种专门的编程语言,进行Web页面样式设计,再通过编译器转化为正常的CSS文件,以供项目使用。

不同之处:

  1. 编译环境不一样less是基于JavaScript,是在客户端处理的。sass是基于ruby的,是在服务器端处理的。
  2. 变量符不一样,less是@,而sass是&。
  3. 输出设置,less没有输出设置,sass提供4种输出选项:nested,compact,compressed和expanded。
  4. sass支持条件语句,可以使用if()else{},for{}循环等等,而less不支持。

十、HTML5语义化标签

HTML5新增的语义化标签主要有:

<article><section><nav><aside><header><footer>等等…

filter_thres一般为多少_前端

优点

  1. 为了在没有CSS的情况下,页面也能呈现出很地内容结构、代码结构
  2. <div>标签有更加丰富的含义,方便开发与维护
  3. 方便搜索引擎能识别页面结构,有利于SEO
  4. 方便其他设备解析(如移动设备、盲人阅读器等)
  5. 有利于合作,遵守W3C标准

header标签和hgroup标签
放在页面或布局的顶部,一般放置导航栏或标题,如:

<header>
	<h1>甜柚~</h1>
</header>

一个文档中可以包含一对或者一对以上的<header>标签。
如果有连续多个h1~h6标签就用hgroup。

nav标签
表示页面的导航,也可以在<header>标签中使用,还可以显示在侧边栏中。一个页面之中可以有多个<nav>标签。为了方便搜索引擎解析,最好是将主要的链接放在nav中。

<header>
	<nav>
		<li><a href="index.html">首页</a></li>
       	<li><a href="one.html">例子1</a></li>
       	<li><a href="two.html">例子2</a></li>
	</nav>
</header>

aside标签
所包含的内容不是页面的主要内容、具有独立性,是对页面的补充。
<aside>一般使用在页面、文章的侧边栏、广告、友情链接等区域。

footer标签
一般放在页面或则页面中的某个区块的底部,包含版权信息、联系方式等信息。一个页面也可以有多个footer。

article标签
<article>元素应该应用于=在相对比较独立、完整的内容区块,所以我们可以在一篇博客、一个论坛帖子、一篇新闻报道或则一个用户评论中使用<article>元素。article可以互相嵌套。

section标签
一组或者一节内容。包含的内容是一个明确的主题,通常有标题区域。

------学向勤中得,萤窗万卷书。