关于HTML的那些事

news/2024/7/19 10:17:00 标签: xhtml, 爬虫, 运维

HTML基础知识

meta标签

<!-- SEO搜素引擎优化,尽量让自己的网站在搜索引擎有相关搜索时出现 -->
        <!--网站搜索时根据所提供的keywords得到搜索结果-->
        <meta name="keywords" content="鲜花,广州鲜花速递,深圳鲜花速递">
        <!--关于搜索结果的介绍-->
        <meta name="description" content="这是一个卖鲜花的网站">
        <!--字符集-->
        <!--出现乱码的情况,1.文件的字符集不是utf-8 2.meta charset不是utf-8-->
        <meta charset="UTF-8">
        <!--创建网站时,会有很多html页面,但网页首页服务器会默认是index,所以默认起名字是index-->
        <!--重置文件reset.cssnormalize.css下载link即可-->

doctype作用,严格模式和混杂模式如何区分,它们有何意义?

doctype声明位于HTML文档的第一行,位于html标签之前,用于告知浏览器解析器用什么文档标准解析这个文档,doctype不存在或者格式不正确会导致文档以兼容模式呈现

在兼容模式中,页面以宽松的向后兼容的方式显示,模拟老式浏览器的行为以防止站点无法工作。标准模式的排版和JS运作模式都是以该浏览器支持的最高标准运行。

如果HTML文档包含形式完整的doctype,那么他一般是以标准模式呈现,对于HTML4.01文档,包含严格的DTD的doctype常常导致页面以标准模式呈现,doctype不存在或者格式不对会导致文档以混杂模式出现。

请描述一个网页从开始请求到最终显示的完整过程?

1.在浏览器输入网址
2.发送至DNS服务器并获得域名对应的WEB服务器IP地址
3.与WEB服务器建立TCP连接
4.浏览器向WEB服务器的IP地址发送相应的HTTP请求
5.WEB服务器响应请求并返回指定的url的数据或错误信息。如果重定向,则重定向到新的url地址
6.浏览器下载数据后解析HTML源文件,解析的过程中实现对页面的排版,解析完成后在浏览器显示基础页面
7.分析页面中的超链接并显示在当前页面,重复以上过程直至无超链接需要发送,完成全部数据显示。

html5为什么只需要写<!DOCTYPE HTML>?

html5不基于SGML,因此不需要对DTD进行引用
html4.01基于SGML,因此需要对DTD进行引用

浏览器内核的理解

浏览器最重要或者说核心部分:渲染引擎,不过我们一般称之为浏览器内核。负责对网页语法的解释(标准通用标记语言下的一个应用html,javascript)并渲染显示的网页。渲染引擎决定了浏览器如何显示网页内容以及页面的格式信息,不同的浏览器内核对网页编写语法的解释也有不同,因此同一网页在不同浏览器内核的浏览器里渲染显示的效果也不同。
渲染引擎负责获取网页的内容,整理讯息,以及计算网页的显示方式

常用浏览器内核

Trident内核(MSHTML):IE,360,搜狗
Gecko内核:FireFox
Presto内核:Opera7以上
(Opera内核原为Presto 现为Blink)
webkit内核:Safari,Chrome
(Chrome的Blink使webkit的分支)
EdgeHTML内核:Microsoft Edge
(此内核其实是从MSHTMLfork来的,删除了几乎所有IE私有特性)

简述一下对html语义化的理解

1.html语义化让页面的内容结构化,结构更清晰,便于对浏览器,搜索引擎解析
2.即便在没有css样式的情况下也能以一种文档格式显示,并且是容易阅读的。
3.搜索引擎的爬虫也依赖于HTML标记来确定上下文和各个关键字的权重,有利于SEO
4.使阅读源代码的人更容易将网站分块,便于阅读,维护和理解。

行级元素和块级元素分别有哪些?

行级元素:
a, em(强调),strong(粗体强调),span,i(斜体),img,b(粗体),lable(表格标签),
select(项目选择),textarea(多行文本输入框)sub(下标)
不能设置宽高宽高是内容的高度,可以设置padding,只能设置左右的外边距,不能设置上下外边距
块元素:
不设置高,靠内容充起来,宽度不设置的情况下是充满父级元素的
可以设置宽高,外边距,内边距
div dl定义列表 dt dd ul 非排序列表
ol,p,h1-h6,table,fieldset form,
空元素:br hr
行内块级元素 input和img

a标签

href里不仅可以是一个远程地址,还可以是一个本地文件

    <a href="https://ww.baidu.com" target="_blank">百度一下</a>
    <!--target属性值的说明
    _blank重新启动一个新的页面
    _parent是父级页面打开
    _top是最上层的页面打开-->

link和@impoort的区别

1.link属于XHTML标签,而@import是CSS提供的
2.页面被加载时,link会同时被加载,而@import引用的css会等到页面被加载完了再加载
3.import只在ie5以上才能被识别,而link是XHTML标签,无兼容性问题
4.link方式的样式权重高于@import的权重
5.使用dom控制样式时的差别,当使用js控制dom去改变样式的时候,只能使用link标签。

列表标签

ol,ul,li样式重置:list-style:none
a样式重置:text-direction :none
ul,ol有上下16px的外边距,左面40px内边距

img标签

<img id="zyl" src="resourses/zylbg.jpg" alt="图片加载失败" title="这是居老师的图片">
<!--alt在图片加载失败时显示 title是在鼠标放到图片上显示-->
<!--设置页面头的图片第一种是a标签里嵌套img标签。ie6下,如果a标签包含img标签,img会有一个边框,需要样式重置border=0-->
<!--当a标签中有img标签的时候:a标签若没有改变成block 则图片的宽高会有错误-->
<!--当图片作为块级元素的背景图片出现的时候,如果块级元素没有设置高度那么整个块级元素将不显示图片-->
<!--background-position:center;//水平垂直居中
//right center //右侧 垂直居中
//right bottom(top)//右侧底部(头部)-->

背景图片大于要显示的大小的时候
<!--background-position: center top;-->
<!--让图片显示中间的部分-->
<!--background-size: auto 100%;-->
<!--适应要显示的大小-->

table标签

<table border="1">
        <tr>
            <td colspan="2">11</td>
    <!--跨列合并单元格-->
        </tr>
        <tr>
            <td>21</td>
            <td>22</td>
        </tr>
    </table>
<!--td可以设置宽高跟行内块级元素差不多,tr和table是块级元素-->
<!--table标签里有border属性,这个和style里边的border不同-->
<!--table里面的属性跨行时只能从上往下跨行不能从下往上跨行。-->
<!--跨列的时候如果左面的一列不见了,那么右面的列会移到左面-->
<!--这个属性可以用在新闻网页,当鼠标放在a标签上的时候会显示这种提示-->

http://www.niftyadmin.cn/n/1117425.html

相关文章

启动报错:java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener

如果你是maven项目&#xff0c;tomcat在发布项目的时候没有同时发布maven依赖所添加的jar包&#xff0c;你需要设置一下eclipse&#xff1a;项目 —> 属性 -> Deployment Assembly -> Add -> Java Build Path Entries -> 选择Maven Dependencies -> Finish -…

java action调用别的service为null,支付宝notify_url,配置替自己写的springMVC的action后,调用service时报属性注入的Dao为null...

支付宝notify_url&#xff0c;配置为自己写的springMVC的action后&#xff0c;调用service时报属性注入的Dao为null,Android端&#xff1a;// 服务器异步通知页面路径//orderInfo "&notify_url" "\"" "http://notify.msp.hk/notify.htm&q…

axios的全局拦截之axios.interceptors

vue项目里&#xff0c;每一个文件&#xff0c;没一个模块都可能调用接口&#xff0c;那么就有请求正常、请求出错的情况&#xff0c;请求正常里又有成功返回数据和出现错误的情况&#xff0c;如果每次调用接口都重新写一遍逻辑&#xff0c;是很没必要的&#xff0c;那么有没有办…

Samba(文件共享服务)

系统版本&#xff1a;CentOS7.X概念Samba是Linux上用于局域网内文件和打印机共享的一个软件。Samba相对vSFTP传输效率较好&#xff0c;但是安全性较低。Samba支持NetBios协议&#xff0c;可以让Windows系统通过一个NetBios名访问到共享。Samba由Smbd和Nmbd两个个守护进程组成&a…

Spring Boot -logback 使用

简单使用 依赖 <dependency><groupId>ch.qos.logback</groupId><artifactId>logback-classic</artifactId></dependency><!--转换器log4j 转 logback--><dependency><groupId>org.slf4j</groupId><artifactId&…

php最新面试,PHP最新面试题2019

搜索热词1、字符串"0"在PHP和js中转换为布尔值是false还是truePHP:false; PHP 弱语言 0和0一样&#xff1b;js:true&#xff1b;字符串除了空字符串()其他都是true(包括 这种中间有空格的);2、echo&#xff0c; print,print_r,var_dump 区别echo 语言结构&#xff0…

linux 学习- 编程基础之uboot移植

uboot.bin 生成&#xff1a;1. 对board配置 $make smdk2410_config 2, 进行编译生成u-boot.bin&#xff1a; $make CROSS_COMPILEarm-linux- //完整的arm-liunx的目录 Uboot命令 1&#xff0c;help 查看所有命令 2&#xff0c;printenv 查看环境变量 3&#xff0c;…

Hadoop 分布式文件系统命令

1&#xff0c;hadoop fs –fs [local | ]&#xff1a;声明hadoop使用的文件系统&#xff0c;如果不声明的话&#xff0c;使用当前配置文件配置的&#xff0c;按如下顺序查找&#xff1a;hadoop jar里的hadoop-default.xml->$HADOOP_CONF_DIR下的hadoop-default.xml->$HAD…