背景:

年底将至,本人这只才出门的前端菜鸟,终于有空闲的时间来整理一下最近投简历时出现的问题。有的是经常使用但是没有仔细留意造成的;有的是个人认为根本没人使用而忽略的。为了下次不出现这种错误,进行一下总结。问题的答案有的是本人自己总结的,有的是查找资料获取到的。对于查找到的答案会特别标注。如果本文有什么问题的话,希望大家积极留言,本人会对文章进行修改。

HTML:

 1.div图片img与div容器下有距离的解决办法

  这个问题经常出现在网站的布局,也是前端面试官作为浏览器兼容性经常提起的“老标兵”。

  出现状况:IE6,IE7下的img与div(块元素)会出现一些间隔,IE7才会有这个问题,IE8下是没有的。

  出现原因:图片和文字等行内元素默认是和父级元素的baseline(baseline是基线,这里我们认为它是水平贯穿div、竖直位置确定的一条横线就行。)对齐的,而baseline又和父级底边有必定间隔(与font-size,font-family有关),所以设置vertical-align:top  /  bottom / text-top / text-bottom 都能够防止这种状况呈现。而且不光li,其他的block元素中包括img也会有这个景象。

  解决方案:

  方法一:定义图片img标签vertical-align:bottom,vertical-align:middle,vertical-align:top。

      img{vertical-align:bottom;}

  方法二:定义容器里的字体大小为0。
      div {
        width:110px;
        border:1px solid #000000;
        font-size:0
        }

 2.高亮显示内容(一个面试当中的问题,对于搜索结果的关键词进行高亮显示。因为平常在使用中很少见,所以就没进行关注,由此可见自己的基础储备需要提高)。

  标签:<mark></mark>

   作用:使用mark标签元素,可以高亮显示文档中的文字以达到醒目的效果。

   解决方案:

    <p>使用mark标签元素,可以<mark>高亮</mark>显示文档中的文字以达到醒目的效果。</p>

  注:使用strong、em元素同样能达到这样的效果,不推荐使用strong、em元素,因为strong、em元素的作用是强调文本,并非仅仅是高亮显示文本。

 3.HTML标签的padding与margin问题(初开始对于使用padding与margin都是比较粗糙的。对于标签布局设置都是以试为主。这个问题是需要立即解决)

  问题分析:对于HTML标签进行划分,一般可以分为:块级元素,行内元素,空元素(可能划分的名称不同,但是大约可以分为这三类)。一般我们接触到的都是块级元素与行内元素。首先我们先分析这两种类型标签的不同。

    块级元素:块级元素会独占一行,其宽度自动填满其父元素宽度。

    行内元素: 行内元素不会独占一行,相邻的行内元素会排列在同一行里,直到一行排不下,才会换行,其宽度随元素的内容而变化。

  注:一般情况下,块级元素可以设置 width, height属性,行内元素设置width,  height无效(注意:块级元素即使设置了宽度,仍然是独占一行的)

  结果:

      块级元素可以设置margin 属性和 padding属性.并能正确显示。

      行内元素的水平方向的padding-left / padding-right / margin-left / margin-right 都产生边距效果,但是竖直方向的padding-top / padding-bottom / margin-top / margin-bottom都不会产生边距效果。(水平方向有效,竖直方向无效)

  答案参考于:Jackie_Xie的Html中行内元素有哪些?块级元素有哪些?

  4.src,url与href的区别?

   URL(Uniform Resource Locator,统一资源定位符):统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它。(我们可以简单的理解为是把资源文件存放到无数文件夹中的一个里面,而我们可以通过文件路径查找到该文件,而该文件路径是唯一的)

   分类:

    1、绝对URL(absolute URL)

    绝对URL(absolute URL)显示文件的完整路径,这意味着绝对URL本身所在的位置与被引用的实际文件的位置无关。

    2、相对URL(relative URL)

    以包含URL本身的文件夹的位置为参考点,描述目标文件夹的位置。如果目标文件与当前页面(也就是包含URL的页面)在同一个目录(也就是同一个文件夹下),那么这个文件的相对URL仅仅是文件名和扩展名,如果目标文件在当前目录的子目录中,那么它的相对URL是子目录名,后面是斜杠,然后是目标文件的文件名和扩展名(比如在a文件夹下有b文件夹与c.txt,而在b文件夹下有d.txt,而我们要以c.txt为参考点,获取d.txt,那么url="./d.txt")。如果目标文件与当前页面不在同一个目录下,则需要使用"../"(../的作用是返回该目标文件的上一层路径),一直到目标文件所在的文件夹与当前页面所在的文件夹有共同的父文件夹,然后在此查找目标文件的路径。

   重点:href和src 的定义与区别

   href和src是有区别的,而且是不能相互替换的。我们在可替换的元素上使用src,然而把href用于在涉及的文档和外部资源之间建立一个关系。

   href(Hypertext Reference)

   指定网络资源的位置,从而在当前元素或者当前文档和由当前属性定义的需要的锚点或资源之间定义一个链接或者关系。(或者可以理解为超文本引用,指向网络资源所在位置,建立和当前元素(锚点)或当前文档(链接)之间的链接,它与页面直接的关系为链接的关系,在加载它的时候页面本身也不会停止其他内容的加载。

   例:<link href="style.css" rel="stylesheet" />

   浏览器明白当前资源是一个样式表,页面解析不会暂停(由于浏览器需要样式规则去画或者渲染页面,渲染过程可能会被暂停)。这与把css文件内容卸载<style>标签里不相同,因此建议使用link标签而不是@import来把样式表导入到html文档里

   src(Source)

   仅仅嵌入当前资源到当前文档元素定义的位置。(表示的是引入文件,目的是要把文件加载到html页面中去,当浏览器解析的时候会暂停其他的内容而会先加载src内容,必须要等到src的内容加载完成之后才会执行后面。这就是为什么js文件往往放在了html文件的最下面的原因。如果是在页面head上放了js文件,目前我知道的一种方法来实现js最后加载的方法就是在js脚本里使用:window.onload事件处理。

 

   

  

  

那些容易遗忘的web前端问题的更多相关文章

  1. web前端——10个妨碍进步的学习方式

    1.前言 从事web前端的人很多,每个人的学习方式,学习习惯基本不会一模一样!关于web前端(或者直接互联网),大家都知道,是做到老,学到老的一个行业.之前写文章的时候,我说过很多学习的方式和建议.今 ...

  2. Web前端开发必不可少的9个开源框架

    大多数人想到Web开发时,通常会想到HTML或JavaScript,往往忽略了CSS,根据Wikipedia的说法,CSS既是网页中最重要也是最常被遗忘的部分之一,尽管它是万维网的三大基础技术之一. ...

  3. Web前端需要熟悉大学里【高大上】的计算机专业课吗?

    作为一名刚刚大学毕业,进入新的学习阶段的研究生,我必须说大学的专业课非常重要!不管你信不信,事实就是如此! 一.大学学习的专业课非常重要,它决定了我们能走到什么高度 前端的发展非常快,我常常觉得刚刚关 ...

  4. web前端开发分享-目录

    1. web前端开发分享-css,js入门篇 2. web前端开发分享-css,js进阶篇 3. web前端开发分享-css,js提高篇 4. web前端开发分享-css,js工具篇 5. web前端 ...

  5. Web前端温故知新-CSS基础

    一.CSS定义与编写CSS 1.1 CSS的定义 全名:Cascading Style Sheets -> 层叠样式表 定义:CSS成为层叠样式表,它主要用于设置HTML页面中的文本内容(字体. ...

  6. web前端的春天 or 噩梦

    「 微信应用号可以做什么」 简单说,微信"小程序"可以为开发者提供基于微信的表单.导航.地图.媒体和位置等开发组件,让他们在微信的网页里构建一个 HTML 5 应用.同时微信还开放 ...

  7. Web 前端开发精华文章推荐(jQuery、HTML5、CSS3)【系列十二】

    2012年12月12日,[<Web 前端开发人员和设计师必读文章>系列十二]和大家见面了.梦想天空博客关注 前端开发 技术,分享各种增强网站用户体验的 jQuery 插件,展示前沿的 HT ...

  8. 也许你需要点实用的-Web前端笔试题

    之前发的一篇博客里没有附上答案,现在有空整理了下发出来,希望能帮助到正在找工作的你,还是那句话:技术只有自己真正理解了才是自己的东西,共勉. Web前端笔试题 Html+css 1.对WEB标准以及w ...

  9. 用grunt搭建web前端开发环境

    1.前言 本文章旨在讲解grunt入门,以及讲解grunt最常用的几个插件的使用. 2.安装node.js Grunt和所有grunt插件都是基于nodejs来运行的,如果你的电脑上没有nodejs, ...

随机推荐

  1. react 体验 react与vue的比较

    用了 vue 大半年了,不过我在2016年暑假的时候就看到了 react 这个项目,有点想学习一番,之前学习的都是基础语法和一些基础用法吧,总的来说 mvvm 框架确实都很相似,会一个就可以了; 今天 ...

  2. Python 日志处理(二) 使用正则表达式处理Nginx 日志

    使用正则表达式来处理Nginx 日志 一. 先对单行的日志进行分组正则匹配,返回匹配后的结果(字典格式): from datetime import datetime import re #单行日志 ...

  3. 1455:An Easy Problem

    传送门:http://noi.openjudge.cn/ch0406/1455/ /-24作业 //#include "stdafx.h" #include<bits/std ...

  4. postgresql的psql常用命令-4

    psql是PostgreSQL的一个命令行交互式客户端工具 1. 查看postgresql账号 [root@localhost ~]#cat /etc/passwdroot:x:0:0:root:/r ...

  5. listview相关代码整理

    虽然listview已经慢慢被替代了,  不过还是整理下 , 留作纪念吧 /** * 获取 listview 实际滚动的距离. [ 相对于listview的第一个项目左上角.] * * @return ...

  6. C#图片压缩上传

    /// <summary> /// 压缩图片 /// </summary> /// <param name="iSource">图片文件< ...

  7. c语言的数组

    1. 数组的基本概念 一个int类型的变量能保存一个人的年龄,如果想保存整个班的年龄呢? 1. 什么是数组 数组,从字面上看,就是一组数据的意思,没错,数组就是用来存储一组数据的 2. 数组的特点 ● ...

  8. git使用(上)-----基本的方法

    git应该是一项必须要掌握的工具.先简述它和SVN的区别 SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器哪里得到最新的版本,然后干活 ...

  9. Java基础概念1

    一.Java数据类型 1.byte 字节型 1byte = 8bit 表示数范围:-2^7~2^7-1(-128~127): 2.short 短整型 2 byte = 16bit 表示数范围:-2^1 ...

  10. 【C#入门教案-02】用记事本编写第一个C#程序-Hello World

    02-用记事本编写第一个C#程序-Hello World 广东职业技术学院  欧浩源 [1]进行.NET程序开发的最基本环境配备 .NET Framework + 代码编辑工具(记事本或Noetpad ...