关于前端的一些基础知识

首先来认识以后常常要打交道的三个东西。

HTML(标签)超文本标记语言 从语义的角度描述页面结构。提到HTML的作用,只能从语义方面从想,绝对不能想样式。

tips:任何一个标准的HTML页面,第一行一定是一个以DOCTYPE ……开头的语句。这一行,就是文档声明头,DocType Declaration此标签可告知浏览器文档使用哪种 HTML 或 XHTML 规范。

CSS(样式)层叠式样式表 从审美的角度负责页面样式。

tips:标准的div+css页面,用的标签种类很少:div p h1 span a img ul ol dl input。

关于元素使用id还是class,一般来说,给一个元素添加样式建议使用class,但是如果是对元素进行一些操作,则使用id更好一些,id是唯一的,而class可以多个元素使用同一个,便于元素渲染。


基础知识介绍完毕,说一些初学者经常会遇到的问题吧。

一些简单的易于理解的CSS知识就不过多提了,比如继承性、层叠性、权重这些。

visibility:hidden;隐藏内容,同时占位置;visibility:hidden+height:0 等同于 display:none,可以启到在同一个样式中同时使用 display中的两种属性的效果。

BFC:我们常用的 div+css 经常会使用BFC。块级格式化上下文,一个独立的块级渲染区域,该区域拥有一套渲染规则来约束块级盒子的布局,且与区域外部无关。

BFC约束规则:

1.生成BFC元素的子元素会一个接着一个防止。垂直方向上他们的起点事一个包含块的顶部,两个相邻子元素之间的垂直距离取决于元素的margin特性。在BFC中相邻的块级元素外边距会折叠,同属一个BFC的两个相邻Box的margin会发生重叠

这里说一下两个元素的边距合并问题。可能有以下几种情况:

1. 符合垂直边距合并的条件,就是因为BFC块级元素边距相邻, 出现了 边距合并现象。

2.不符合垂直边距合并有两种情况

(1)兄弟元素,这是兄弟元素的底部边距跟顶部边距重叠,只需要清除状态即可

(2)父级元素跟子元素, 所有毗邻的两个或更多盒元素的margin将会合并为一个margin共享之。毗邻的定义为:同级或者嵌套的盒元素,并且它们之间没有非空内容、Padding或Border分隔。简单讲:根据规范,一个盒子如果没有上补白和上边框,那么它的上边距应该和其文档流中的第一个孩子元素的上边距重叠

解决这种问题的办法很简单,就是都加上padding就好了(最简单的方法)

参考官方文章:  官方原文(英文版)

2.生成BFC元素的子元素中,每一个子元素左外边距与包含块的左边界接触,即使浮动元素也是如此(除非这个子元素自身也是一个浮动元素)。

3.BFC的区域不会与float的元素区域重叠。

4.计算BFC高度时,浮动元素也参与计算。

5.BFC就是页面上一个隔离的独立容器,容器里面的子元素不会影响到外面元素,反之亦然。

我们在写css常见的一些问题都可以由上面两条推出,例如:

  (1).Block元素与父元素同宽,所以Block元素竖直方向上垂直排列。

  (2).竖直方向上有的Block元素margin会重叠,水平方向不会。

  (3).浮动元素会尽量接近左上方或右上方。

  (4).为父元素设置overflow:hidden或浮动父元素,则父元素会包含其浮动的子元素。

position五种定位:

position定位是指定位置的定位,以下为常用的几种:

1、static(静态定位)

当我们没有指定定位方式的时候,这时默认的定位方式就是static,也就是按照文档的书写布局自动分配在一个合适的地方,这种定位方式用margin来改变位置,对left、top、z-index等设置值无效,这种定位不脱离文档流

2、relative定位(相对定位)

该定位是一种相对的定位,可以通过设置left、top等值,使得指定元素相对其正常的位置进行偏移,这种定位不脱离文档流

特点:占位置   作用:1.父相子绝  2.微调元素   比如:input标签底部无法对齐的处理

3、absolute定位(绝对定位)

这种定位通过设置top、right、bottom、left这些偏移值,相对于 static 定位以外的第一个父元素进行定位(这种定位通常设置父元素为relative定位来配合使用),在没有父元素的条件下,它的参照为body,该方式脱离文档流

4、fixed(固定定位)

这种定位方式是相对于整个文档的,只需设置它相对于各个方向的偏移值,就可以将该元素固定在页面固定的位置,通常用来显示一些提示信息,脱离文档流

5、inherit定位

这种方式规定该元素继承父元素的position属性值。

这里来聊一下有些面试题会要给出几种元素居中方案,就是从这几个定位来做。

1. 标准流的盒子居中:margin:0  auto;

2. 绝对定位的盒子居中:{position:absolute;left:50%;margin-left:-width/2;}


关于样式的其他问题,可以评论区留言,开另篇文章细细聊一下。在此不过多提及了,这里来聊聊重头戏控制页面行为的JavaScript

JavaScript(行为):面向Web的编程语言

JavaScript因为体量太大要说的太多,我之后会分为,从面试的角度出发,JavaScript有哪些需要注意的知识点,以及提炼JavaScript权威指南(第六版)的重要知识点出发,来全面的聊聊JavaScript。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,179评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,229评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,032评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,533评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,531评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,539评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,916评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,574评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,813评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,568评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,654评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,354评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,937评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,918评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,152评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,852评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,378评论 2 342

推荐阅读更多精彩内容