整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

HTML中的标签是不是都成对?单个标签是什么情况?

-尖括号<html></html>是一组成为“双标记”,可以理解为<html>为始,</html>为终或闭合;

2-所有的标签都有<>开始,但不是所有的标签拥有</>结束,不是所有的标签有始就有终。比如<hr>水平线;

3-单个的标签叫什么?

单个的标签叫“单标记”,也可以叫不成对标签。

单标记指的是没有闭合标记的标记(没有结束标记),即空标签。

4-如果给“单标记”加上闭合会怎么样?

在空标签上使用闭标签是无效的,例如:</hr>。这样的情况是无效的HTML标签。

总结,一点小心得。双标记就如一段事件,单标记就像一种能力,事件会有开始和结束,能力的关闭就是程序的关闭。

以下是一些练习截图

这段代码的显示是下图

这是自学中的一点点自己的理解,如果有错误,欢迎留言指正。

低版本安卓中对TextView加载html所支持的标签不够多,比如在搭载了android 5.1的手机上我们的app调用了Html.froml为TextView设置文本时,当source包含span标签时不会处理,高版本则会去处理;

对比下高低版本的Html.java如下:

android api level 22


android api level 28


我们发现,高版本是支持span标签的,那低版本怎么处理呢?我们看到方法handleStartTag

中在不支持的标签都会回调一个方法:


所以我们只需要传入自定义的TagHandler就可以处理Html.java不支持的标签了。

一开始我们为TextView设置文本时这样写:

String text="创建<span style='color: #ff8500;'>7</span>天,累计消费<span style='color: #ff8500;'>15</span>元";
textview.setText(Html.fromHtml(text));

高版本手机正常加载span标签,低版本的手机效果如下:

更改后这样写:

String text="创建<span style='color: #ff8500;'>7</span>天,累计消费<span style='color: #ff8500;'>15</span>元";
textview.setText(Html.fromHtml(text,null,new CustomTagHandler()));

更改后在低版本效果如下:

CustomTagHandler的实现参考高版本的Html.java,完整代码如下:

、空标签概念

没有与之对应的结束标签的标签

2、常见的空标签:

  1. <meta /> //元数据
  2. <base /> //网页的基础链接
  3. <link /> //引入外部链接
  4. <br /> //换行
  5. <hr /> //水平线
  6. <img /> //插入图片
  7. <area /> //图片map中的可点区域
  8. <input /> //用于搜集用户信息

3、注意事项:

虽然HTML中对空标签是否需要加结束符号“ / ”进行强制规定,但是在XHTML(XML规范的HTML版本)或XML中,对空标签进行强制要求,指出空标签必须使用结束标志,大多数人推荐使用规范的编写格式,并且在未来将会对空标签的结束符号进行强制要求。

在html中,在空标签上使用闭标签是无效的,例如:</br>。这样的情况是无效的HTML。