HTML元素属性测试总结(续篇)

code 元素的含义(语义)为“代码内容”,FireFox 在渲染该元素时,会将 code 标签内容显示为“等宽字体”(每个字符的宽度相等),这就造成了元素的语义和呈现形式混杂在一起;正确的做法是:浏览器应该无视 code 元素由于历史原因遗留下来的默认呈现效果(等宽字体)。

语义元素仅仅说明文档内容的结构与含义,例如 code 表示文档中的代码;video 表示文档中的视频;用 CSS 控制这些元素呈现给用户的形式(将 code 元素的内容用等宽字体呈现给用户),这就做到了内容与呈现分离,例如对于下面这个文档:

<!DOCTYPE html>
<html lang="en">
    <head>
                <meta http-equiv="Content-type" content="text/html;charset=utf-8" />
                <title>XssPayloadTest</title>
        </head>
        <body >
         <div>
            this is normal textNode<br>
            <code>this is normal textNode include in code element</code>
        </div>    
    </body>
</html>

渲染效果如下:

另外,虽然 chrome 默认也会改变 code 标签内部的字体样式,但是其效果不明显,无法区分等宽与非等宽字体,如下:

小结:上述三种浏览器都没有将语义元素与其呈现效果分离这一概念实施的很好,开发者可以通过 CSS 改变 code 元素的“默认”样式。

时间: 2024-07-30 12:48:52

HTML元素属性测试总结(续篇)的相关文章

js+jquery动态设置/添加/删除/获取元素属性的两种方法集锦对照(动态onclick属性设置+动态title设置)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html140/strict.dtd"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"/> <title>

js中元素属性值的获取

一.样式表的三种方式 1.内嵌样式(inline style):是写在tag标签当中的,用style=“”来表示,只对当前标签生效: 2.内部样式(inner style sheet):是写在HTML中的,一般写在head标签中,对所在的网页有效 3.外部样式表(Extend style sheet):写在单独文件,需要用link标签单独引入,可对多个网页生效 二.获取style样式属性 1.在js中,通过document.getElementById("id").style.xxx就

DOM操作HTML元素属性

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>DOM操作HTML元素属性</title> </head> <body> <ul> <li></li> <li></li> <li></li> <

文档对象模型(DOM)系列三:处理元素属性

除了获取元素的内容,获取和设置元素的属性值也是经常进行操作的.处理元素属性有很多种方法,其中元素有两个访问和设置元素属性的方法,即getAttribute()和setAttribute() <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="default.aspx.cs" Inherits="UI._default" %> <!DOCTYPE

jquery源码解析:jQuery对元素属性的操作1

我们先来看一下jQuery中有多少个方法是用来操作元素属性的. 首先,看一下实例方法: 然后,看下静态方法(工具方法): 静态方法是内部使用的,我们外面使用的很少,实例方法才是对外的. 接下来,我们来看下一些方法是如何使用的? $("#div1").attr("title","hello") ,设置属性,两个参数时. $("#div1").attr("title") , 获取属性值,一个参数时. $(&qu

JavaScript示例一(输出元素属性)

很久以前学过一阵子javascript,没怎么实际用,也不太以为然,觉得挺小众的.没想到几年之间屌丝逆袭成高富帅了.javascript俨然成了跨平台的通用web语言.无奈只得从头恶补.参考书籍就是<JavaScript 高级程序设计>和<JavaScript语言精粹>.结合书的内容,整理了一些自己的理解和代码示例,记录在这里留着随时回顾. 输出元素属性: <html> <head> <title> 输出元素属性 </title> &

[ jquery 表单UI选择器和表单元素属性选择器 ] 表单UI选择器和表单元素属性选择器

表单UI选择器和表单元素属性选择器: 实例: <!DOCTYPE html> <html lang='zh-cn'> <head> <title>Insert you title</title> <meta http-equiv='description' content='this is my page'> <meta http-equiv='keywords' content='keyword1,keyword2,keywo

XML数据解析(元素属性) SAX方式NSParser代理

本文使用的XML文档格式 SAX解析XML数据是一行一行的解析,与DOM方式将整个文档加入内存解析方式不同, SAX解析使用NSParser(apple自带框架)DOM依靠GData(谷歌开发) SAX解析数据原理:事件驱动,每发现一个元素就通知代理,在代理方法中将发现的元素封装存储到字典中,我们通过遍历字典拿到发现的每个元素,模型化后存放在数据源数组中 下面给出这个XML文档的SAX解析代码,其余部分代码与前面几篇文章相同 SAX解析常用的代理方法:(都是代理方法,解析器发现一个数据就通知对应

jquery源码解析:jQuery对元素属性的操作2

这一课,我们将继续讲解jQuery对元素属性操作的方法. 首先,我们先看一下这几个方法是如何使用的: $("#div1").addClass("box1 box2");     //给元素div的class属性添加box1和box2 $("#div1").removeClass("box1");     //删除元素div的class属性值box1 $("#div1").toggleClass("