zoukankan      html  css  js  c++  java
  • 网页基本内容、标签、选择器、git使用

    回顾学习历程

    创建一个html5的网页

    网页基本要素DOCTYPE、html、head、body

    声明是H5:
    声明H4(已经过时):
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    
    HTML网页文档的根要素,或者叫做根标记,是网页文档中最外层的标记。
    <html lang="zh"></html> 
    

    属性是lang="zh"设置网页描述语言为中文

    HTML其他的特殊属性:
    manifest
    <html manifest="example.appcache"></html>
    

    指定网页缓存文件,可以让用户在离线的时候(比如说在飞机上时)也能够访问页面。

    xmlns
    <html xmlns="http://www.w3.org/1999/xhtml"></html>
    

    设置html文档的名空间,比如把网页设置成xhtml的时候可以用这个属性

    meta标记

    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width,initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    

    meta name指定要描述的信息的名称
    meta.http-equiv设定网页的头信息,可以用于设置http协议传输时的头信息,也可以设定一些网页的行为。
    meta.content和name,http-equiv等属性配合使用,记载属性的描述内容。
    meta.charset指定网页的文字编码,推荐使用utf8编码。

    title

    设置网页的标题,可以显示在浏览器上。
    title是head标记的子标记,写在head标记中。
    这个也是搜索引擎优化(SEO)的一部分,所以给自己的网页起一个好的标题, 更容易被所有引擎找到。

    link标记是链接外部文件时使用的标记,它能把外部文件的内容引用到当前的网页中来, 使当前的网页能够实现更多的功能。

    • href 指定链接外部文件的路径和文件名
    • rel 引用资源(文件)的类型定义
    // 比如外联css样式文件
    <link rel="stylesheet" href="./rWR.css">
    

    style

    style标记描述CSS样式单的定义。(样式单文件的引用使用link标记)
    属性

    • media 指定使用样式单的媒体类型
    • type 样式单的MIME多媒体属性的制定,如果省略的话则是“text/css”
    • scoped(Firefox) 局部区域内的样式单设定

    tempalte标记(H5)

    模版标记template可以定义一个HTML的代码片段,然后通过脚本语言(javascript)向网页中动态生成内容,减少html的重复编码,增加代码的复用性,从而提高工作效率。在vue框架中常用

    script标记

    属性

    • src 引用的外部javascript脚本文件的路径(URL)
    • type 外部文件的MIME多媒体类型指定,比如:text/javascript

    深度思考

    HTML文件里开头的Doctype有什么作用

    DOCTYPE是document type的简写,它并不是 HTML标签,也没有结束标签它是一种标记语言的文档类型声明,即告诉浏览器当前 HTML 是用什么版本编写的。

    不声明doctype会发生什么?

    声明文档的解析类型(document.compatMode),避免浏览器的怪异模式。这个属性会被浏览器识别并使用,但是如果你的页面没有DOCTYPE的声明,那么compatMode默认就是BackCompat,

    这也就是怪异的开始 -- 浏览器按照自己的方式解析渲染页面,那么,在不同的浏览器就会显示不同的样式。

    标准模式和怪异模式

    标准模式,浏览器使用W3C的标准解析渲染页面.
    怪异模式,浏览器使用自己的怪异模式解析渲染页面。

    其他进入怪异模式的方法?

    除了不写DOCTYPE声明外,最常见的就是在DOCTYPE声明前面出现了这些内容:普通文本、HTML 标签、HTML 注释、XML 声明、IE条件注释。

    如何理解盒模型

    盒模型分为IE盒模型(怪异盒子)和W3C标准盒模型(标准盒子)。

    1. W3C 标准盒模型:
      属性width,height只包含内容content,不包含border和padding。
    width = content(不包含 padding 和 border)
    
    1. IE 盒模型:
      属性width,height包含border和padding,指的是content+padding+border。
    width = border(边框左右)+padding(左右)+content
    

    现在默认是标准盒子但是可以将box-sizing设为border-box则用的是IE盒模型

    在盒子模型中常会遇见的问题: margin重叠问题

    什么是外边距margin重叠

    外边距重叠是指两个或多个盒子(可能相邻也可能嵌套)的相邻边界(其间没有任何非空内容、补白、边框)重合在一起而形成一个单一边界。

    • 外边距重叠计算方式: 全部都为正值,取最大者;
    • 不全是正值,则都取绝对值,然后用正值的最大值减去绝对值的最大值
    • 没有正值,则都取绝对值,然后用0减去最大值。

    元素和父元素margin值问题
    父元素无 border、padding、inline content 、 clearance时,子元素的margin-top/bottom会与父元素的margin产生重叠问题。

    常见的inline元素、block元素、inline-block元素有哪些?它们之间有什么区别

    • inline行内元素:a, span, br, i, em, strong, label, q, var, cite, code
    • block块级元素:div, p, h1... h6, ol, ul, dl, table, address, blockquote, form
    • inline-block行内块元素:img, input

    行内元素的特点

    • 和其他元素都在一行上,直到一行排列不下,才会新换一行,其宽度随元素的内容而变化。
    • 元素的高度、宽度及顶部和底部边距不可设置
    • 元素的宽度就是它包含的文字或图片的宽度,不可改变。

    block块元素特点

    • 每个块级元素都从新的一行开始,并且其后的元素也另起一行。
    • 元素的高度、宽度、行高以及顶和底边距都可设置。
    • 元素宽度在不设置的情况下,是它本身父容器的100%(和父元素的宽度一致),除非设定一个宽度。

    inline-block行内块元素特点

    • 内联块状元素(inline-block)就是同时具备内联元素、块状元素的特点
    • 代码display:inline-block就是将元素设置为行内块状元素。
    • 和其他元素都在一行上;元素的高度、宽度、行高以及顶和底边距都可设置。

    一些问题

    • inline和inline-block元素之间的间距问题
      • font-size:0
      • 使用margin负值
      • 弹性盒子--给父元素设置弹性盒子
    • inline-block元素的如何垂直居中
      • 设置上下padding值相等
      • 设置line-height
      • 弹性盒子--父级是弹性盒子他自身也可以设置弹性盒子
    • img元素底部为何有空白?
      • 默认是基线对准,设置成顶线对准vertical-align:top
      • 给图片img标签display:block
      • 定义容器里的字体大小font-size为0。

    如何使用浏览器的F12调试页面?

    • Elements板块你可以看到整个页面的Dom结构。你可以在这里编辑HTML,查看元素CSS,查找元素等等。
    • Console应该都很熟悉了吧?经常会以为少写了’}’而报语法错误。当然它的功能远不止这些。点击这里查看更多
    • Sources就是所有资源了,你可以看到页面加载的资源,图片,css,js等,它们会按照资源的来源分类。
    • Network这个板块,你可以查看页面所加载的所有资源响应情况,响应时间,浏览器等待时间,状态码,MINE Type,资源大小等。
    • Timeline跟前面的工具相比,Timeline就高级很多了。它可以让你查看浏览器的渲染流程。解析代码,布局,绘制,合并渲染层。了解更多,查看之前的文章浏览器渲染流程
    • Profiles工具主要是用来检测CPU占用程度,堆栈申请的内存。
    • Resources工具显示资源的,跟Sources不同的是,它会对文档类型分类。并且它可以查看,增加,删除,修改页面LocalStorage,SessionStorage,Cookies等等。
    快速切换文件:
    按Ctrl+P(cmd+p on
    mac),就能快速搜寻和打开你项目的文件。
    
    在源代码中搜索:
    大家都知道如果在要在Elements查看源码,只要定位到Elements面板,然后按ctrl+f就可以了
    
    使用多个插入符进行选择:
    当编辑一个文件的时候,你可以按住Ctrl在你要编辑的地方点击鼠标,可以设置多个插入符,这样可以一次在多个地方编辑
    
    Pretty Print的按钮在Sources标签的左下角用于格式化凌乱的js源码  
    
    颜色选择器:
    当在样式编辑中选择了一个颜色属性时,你可以点击颜色预览,就会弹出一个颜色选择器。当选择器开启时,如果你停留在页面,鼠标指针会变成一个放大镜,让你去选择像素精度的颜色。
    
    在颜色预览功能使用快捷键Shift + Click,可以在rgba、hsl和hexadecimal来回切换颜色的格式
    
    Chrome Dev开发者选项,浏览器进入chrome://flags,你会看到很多浏览器很多隐藏功能,启用开发者工具实验。
    

    加和不加meta的viewport有什么区别?

    • [ ] 什么是viewport

    viewport 是用户网页的可视区域。
    在PC端浏览器上的视口宽度是与浏览器内部的宽度是保持一致的,但是移动端浏览器的情况会不一样,介于各种设备的分辨率大小、以及浏览器的特性、供应商的要求等等方面,它们的视口大小可能会不一样。

    • [ ] css 中的 1px 并不等于设备的 1px

    css 中的像素只是一个抽象的单位,在不同的设备或不同的环境中,css 中的 1px 所代表的设备物理像素是不同的。

    • [ ] 利用 meta 标签对 viewport 进行控制

    移动设备默认的 viewport 是 layout viewport,也就是那个比屏幕要宽的 viewport,但在进行移动设备网站的开发时,我们需要的是 ideal viewport。

    在head中加入以下代码

    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
    

    作用是让当前 viewport 的宽度等于设备的宽度,同时不允许用户手动缩放。如果不这样的设定的话,那就会使用那个比屏幕宽的默认 viewport,也就是说会出现横向滚动条

    动态改变meta viewport标签

    第一种方法

    可以使用document.write来动态输出meta viewport标签,例如:
    
    document.write('<meta name="viewport" content="width=device-width,initial-scale=1">')
    

    第二种方法

    通过setAttribute来改变 
    
    <meta id="testViewport" name="viewport" content="width = 380"><script>var mvp = document.getElementById('testViewport');
    mvp.setAttribute('content','width=480');</script>
    

    Git学习

    Git是啥

    • Git 管理代码,保证代码版本迭代连续性,即:向A分支merge或者push代码时,A分支代码必须是当前代码的上一个版本,不然会产生冲突。
    • Git有修改就有提交,就有新的代码版本,git管理维护的是修改
    • Git分支存储的是代码副本。
    • push :实际上就是将本地分支合并到远端库分支;pull:实际就是将远端分支合并到本地分支。

    常用操作指令

    • git init 在当前目录中生成一个.git 目录
    • git add . 添加到stage准备状态
    • git commit –m “XXXX” 提交修改,添加注释
      -== git status== 查看当前代码库的状态
    • git log 查看修改提交信息
    • git reset 撤销修改
    • git push origin 分支名 向远端库推送修改
    • git clone/pull 获取远端库项目
    • git branch AAA 建立分支AAA
    • ==git checkout -b AAA == 从当前分支切换到AAA分支 (若AAA分支不存在,则自动新建)
    • git merge AAA (将分支AAA与主枝合并)

    git和svn的区别?

    1.SVN优缺点

    优点:
    
    1、 管理方便,逻辑明确,符合一般人思维习惯。
    
    2、 易于管理,集中式服务器更能保证安全性。
    
    3、 代码一致性非常高。
    
    4、 适合开发人数不多的项目开发。
    
    缺点:
    
    1、 服务器压力太大,数据库容量暴增。
    
    2、 如果不能连接到服务器上,基本上不可以工作,看上面第二步,如果服务器不能连接上,就不能提交,还原,对比等等。
    
    3、 不适合开源开发(开发人数非常非常多,但是Google app engine就是用svn的)。但是一般集中式管理的有非常明确的权限管理机制(例如分支访问限制),可以实现分层管理,从而很好的解决开发人数众多的问题。
    
    

    2.Git优缺点

    优点:
    
    1、适合分布式开发,强调个体。
    
    2、公共服务器压力和数据量都不会太大。
    
    3、速度快、灵活。
    
    4、任意两个开发者之间可以很容易的解决冲突。
    
    5、离线工作。
    
    缺点:
    
    1、学习周期相对而言比较长。
    
    2、不符合常规思维。
    
    3、代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版
    
  • 相关阅读:
    55个高质量个性的Photoshop的笔刷
    60个Web设计师必看的教程
    30个高质量的旅游网站设计
    65非常棒的photoshop框架笔刷
    55个非常有创意的博客和出版字体
    30个最好的免费的WordPress主题
    15非常酷且反应快的jQuery slider插件
    65个漂亮的WordPress博客主题
    45个触发创作灵感的技术类网站设计资源
    55个高质量的Magento主题,助你构建电子商务站点
  • 原文地址:https://www.cnblogs.com/housheng/p/11899785.html
Copyright © 2011-2022 走看看