关于Html+css阶段学习总结
一、学习经历
进入大学不久,就加入了社团,从而对前端有了一个初步的了解,之后也做过一些学校的官网,积累了一些微小的经验。
到了大二的时候,学校开设了专门的html+css课程,从中也学到许多新的html,css知识,也学到了如何规范的编写代码。但由于个人的懒散,两年半的时间大多是浑浑噩噩的度过,到头来并未学到太多有深度的知识。
再之后,通过专业老师的指导,开始进行前端知识的全面及系统性的学习。而这篇文章便是对这次学习的一次阶段性总结。
二、学习感受
细枝末节,一点一滴的积累
听专业老师讲课,最明显的一点感受,就是他会提出一些特别的方法,用最简单的属性来实现你想要的效果。
例如 呼吸灯 案例。
在我看到这个案例时,第一想法当然是将 div 设置为 border-rudios:50% 的圆形容器,两个一嵌套,再通过animation 或 js 来控制动画就完事了。
<body>
<div class="container">
<!-- 正方形,呼吸灯的容器 -->
<div class="rec">
<div class="outer_circle">
<div class="inner_circle">
</div>
</div>
</div>
<!-- 数据信息显示 -->
<div class="info">
HI
</div>
</div>
</body>
然而,老师却提了一个问题,如何控制宽高相等?————当然是设定固定宽高了! 老师又问,有没有别的比较简单的方法呢?————当然是有的啊!老师这样问,那当然是有的吧:)然而我那榆木脑袋却是想不出个什么方案出来。
子元素对于父元素有继承关系,其宽度默认填充父元素宽度,此时,诺是将父元素设为正方形,使子元素高度为100%,那么子元素是不是必然也是一个正方形?再通过父元素的 padding 属性来控制子元素的大小,这样岂不是很方便?当然,前提得将 div 设置为 边框盒子(box-sizing:border-box)。
<style>
.container {
width: 230px;
height: 330px;
background-color: #343434;
margin: 0 auto;
}
.rec {
height: 230px;
box-sizing: border-box;/*边框盒子,外圆是被挤出的*/
padding: 34px;
}
.rec > .outer_circle {
box-sizing: border-box;
height: 100%;
border:6px solid #999;
border-radius: 50%;
padding: 10px;
}
.rec > .outer_circle > .inner_circle {
box-sizing: border-box;
height: 100%;
border:16px solid #fff;
border-radius: 50%;
}
.info {
color: #fff;
text-align: center;
padding: 1em 0;
}
</style>
原来 padding 还可以控制子元素的大小!在这之前,我仅用它进行定位而已。
后来,我又学到,在容器(边框盒子)宽度不固定时,如何使其成为一个正方形(在练习手机音乐播放界面时)。
width: 50%;
height: 0;
padding-bottom: 50%;
在父元素宽高不固定时,通过 padding-bottom 使得容器高度与宽度一致,从而制作成圆。
总结
如上所说的关于 padding 知识,都是对基本属性及知识点熟练掌握之后便可以较为容易想到的,可见那些基础知识点是多么的重要。
希望之后自己能多注重基础知识的积累,并将其融汇贯通。
html+css 的学习并不是太难,也可以说是很容易,但千里之行,这才刚刚开始,熟练的掌握 css,还需要不断的练习。
关于Html+css阶段学习总结的更多相关文章
- CSS项目学习总结
1.我过去在HTML和CSS阶段是如何学习的? 我一开始学HTML和CSS,更多的是通过看视频.书籍,一个知识点一个知识点地去学习,很少把他们串联起来,看代码多于敲代码. 然而,通过现在这几个项目的实 ...
- 2.Freshman阶段学习内容的确定
我刷知乎.在知乎上答题的程序员,不是很牛逼就是更牛逼,说起各种系统.各种系统的各种版本.各种语言.数据库.算法.IT届的各种圣战都有板有眼.信手拈来.头头是道,不得不服.这导致了一些非常严重的问题:我 ...
- 3.Freshman阶段学习内容的确定
我刷知乎.在知乎上答题的程序员,不是很牛逼就是更牛逼,说起各种系统.各种系统的各种版本.各种语言.数据库.算法.IT届的各种圣战都有板有眼.信手拈来.头头是道,不得不服.这导致了一些非常严重的问题:我 ...
- IT兄弟连 HTML5教程 HTML5的学习线路图 第一阶段学习网页制作
学习HTML5技术可并不是简单学会几个新增的标签而已,HTML5现在可以说是前端所有技术的代名词.需要学习的语言和工具不仅多,对于刚接触他们的新人会感觉很乱.另外,前端开发也会细分很多个开发岗位,不同 ...
- 分四个阶段学习python并找到一份好工作
第一阶段 关注公众号"轻松学编程"了解更多. 详细学习资料 需要时间一个月. 1.python概念 python是一种解释型.面向对象.动态数据类型的高级程序语言. 理解: ...
- CSS入门级学习
css入门学习1:认识CSS 1.1:css简介,css全称是层叠样式表,Cascading style sheets 1.2:css的作用,主要是用于定义html内容在浏览器内的显示样式,如文字大小 ...
- css居中学习笔记
css居中学习笔记 一.水平居中 以下面的代码为例: <body> <div class="parent"> <div class="chi ...
- HTML&CSS基础学习笔记—创建列表
创建一张表格 很多时候我们需要在网页上展示一些数据,使用表格可以很好的来展示数据. 在HTML中<table>标签定义 表格. <table> </table> 添 ...
- CSS 3 学习笔记
css 3 学习笔记 文本: word-wrap : normal | break-word取值:normal: 控制连续文本换行.break-word: 内容将在边界内换行.如果需要,词 ...
随机推荐
- LeetCode No.112,113,114
No.112 HasPathSum 路径总和 题目 给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和. 说明: 叶子节点是指没有子节点的节点. ...
- 《ECMAScript 6 入门教程 - 阮一峰著》学习笔记
在刷LeetCode的过程中看到很多新的语法糖,系统学习一下以便代码更加规范,美观,健壮.
- freeswitch的internal的profile无法启动
服务器断电重启后,导致freeswitch的internal的profile无法启动 在fs_cli执行 sofia profile internal restart 打印如下信息: [ERR] sw ...
- Cocos2dx-JS学习01
123456 <body><script src="res/loading.js"></script><canvas id="g ...
- [LC] 23. Merge k Sorted Lists
Merge k sorted linked lists and return it as one sorted list. Analyze and describe its complexity. E ...
- scala slick mysql 字段过多 tuple问题
原同步服务正常,因需,对方单表新增字段,超过22条 sbt assembly 编译出错 too many elements for tuple: 26, allowed: 22 scala case ...
- 吴裕雄--天生自然Android开发学习:1.2.1 使用Eclipse + ADT + SDK开发Android APP
1.前言 这里我们有两条路可以选,直接使用封装好的用于开发Android的ADT Bundle,或者自己进行配置 因为谷歌已经放弃了ADT的更新,官网上也取消的下载链接,这里提供谷歌放弃更新前最新版本 ...
- vue项目根目录下index.html中的id="app",与src目录下的App.vue中的id="app"为什么不会冲突
感谢:https://blog.csdn.net/qq_35624642/article/details/78243413 index.html <body> <div id=&qu ...
- [hdu4630] No Pain No Game
某次模拟赛的T1. 刚开始怀疑是RMQ......我真是太弱了QAQ 题目传送门 正解是离线操作,把所有询问按r从小到大排序. 然后把数从左到右处理,处理完第i个数,就可以回答所有r==i的询问了. ...
- [洛谷P4299] 首都
题目传送门 还是维护子树信息. 但是这里多了一个找重心的操作. 这里有一个关于树重心的结论,据说可以用反证法证明.反正我不会证 就是:新的重心一定在原来两个重心之间的那条树链上. 这样我们逐步缩小搜索 ...