背景:

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

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. struts2的简单执行过程

    struts2是最近刚学的一个框架,想通过写篇文章来加深下印象,这也是本篇博文产生的由来,下面进入正题 Struts2本身是一个挺简单的框架,我们通过写一个登陆的过程来具体描述下其执行过程 1.首先我 ...

  2. 正则化方法:L1和L2 regularization、数据集扩增、dropout(转)

    ps:转的.当时主要是看到一个问题是L1 L2之间有何区别,当时对l1与l2的概念有些忘了,就百度了一下.看完这篇文章,看到那个对W减小,网络结构变得不那么复杂的解释之后,满脑子的6666------ ...

  3. day02HTML_CSS

    掌握表单标签 <form action="http://www.baidu.com" method="post"> ... </form> ...

  4. warning: C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失

    ------问题-------------------- Qt项目使用 VC++ 编译器出现此错误. warning: C4819: 该文件包含不能在当前代码页(936)中表示的字符.请将该文件保存为 ...

  5. java系列视频教程下载

    1.马士兵J2SE基础录屏视频 珍藏版 链接:https://pan.baidu.com/s/1eRMJqkq    密码:qa66 2.spring视频教程 链接:https://pan.baidu ...

  6. ##5.1 Nova控制节点-- openstack pike

    ##5.1 Nova控制节点 openstack pike 安装 目录汇总 http://www.cnblogs.com/elvi/p/7613861.html ##5.1 Nova控制节点 # co ...

  7. 实践作业2:黑盒测试实践——搭建被测web系统Day 4

    1.选择合适的待测web系统 2.安装web系统运行所需工具,配置运行环境 3.成功运行web系统 4.尝试Katalon测试系统

  8. springboot添加swagger2组件

    swagger2是一个可以构建和调试RESTful API文档的组件,利用swagger2的注解可以快速的在项目中构建Api文档,并且提供了测试API的功能 1,引入依赖 <dependency ...

  9. 过渡与动画 - steps调速函数&CSS值与单位之ch

    写在前面 上一篇中我们熟悉五种内置的缓动曲线和(三次)贝塞尔曲线,并且基于此完成了缓动效果. 但是如果我们想要实现逐帧动画,基于贝塞尔曲线的调速函数就显得有些无能为力了,因为我们并不需要帧与帧之间的过 ...

  10. Sagit.Framework For IOS 开发框架入门开发教程1:框架下载与环境配置

    背景: 前天开源了框架:开源:Sagit.Framework For IOS 开发框架 所以注定要追补一套开发教程了,所以尽量抽空了!!! 步骤 1:下载框架源码 GitHub:https://git ...