html的标签里代表加粗的标签是啥?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了html的标签里代表加粗的标签是啥?相关的知识,希望对你有一定的参考价值。

1、strong标签

<strong></strong>加粗标签元素告诉浏览器把其加strong标签的文本以加粗方式显示给浏览者。对于所有浏览器来说,这意味着要把这段文字加粗呈现给大家显示。

示例:

<strong>加粗文字</strong>

2、b标签

<b> 标签规定粗体文本

示例:

<b>加粗文字</b>

注:html strong加粗标签与html B加粗标签显示效果相同,两者都将内容文本加粗方式显示呈现,两者都可以选择使用;

区别:<b></b>加粗标签与<strong></strong>加粗标签区别在于前者只有1个字符,后者6个字符字母标签。

参考技术A <b></b>
<strong></strong>
1、strong是web标准中xhtml的标签,strong的意思是“强调”;b是html的,b的意思是bold(粗体)

2、strong代表其中内容文字的意义。b代表其中文字的样式是粗体。
3、它们起的均是加粗字体的作用。在大多数情况下,它们表现出来的效果也大致相同,所不同的是,<b>标签是一个实体标签,它所包围的字符将被设为bold(粗体),而<strong>标签是一个逻辑标签,它的作用是加强字符的语气,一般来说,加强字符的语气是通过将字符变为bold(粗体)来实现的。
4、
但是在不同的HTML解释器下,情况也可能有所不同。
同样的一段代码,在Internet Explorer和Netscape中显示有可能不同,因为这两个标签涉及浏览器的兼容性的问题。
在Netscape中,如果将字符集设为GB2312的话,<strong>和<b>是不起作用的。要解决这个问题,我们可以将字符集改为885981
参考技术B strong 和 b 标签都能达到加粗的效果,但从语义上讲,strong 代表强调;而 b 则没有语义,已经被 W3C 组织废弃,不推荐使用。 参考技术C <strong>要加粗的内容</strong> 参考技术D <b>加粗内容</b>

Django 过滤器 实例

实例1

safe
让Html标签以及一些特殊符号(如<)生效,下面以例子说明:

# value = ‘<b>CPT</b>‘
# 那么输出的时候,CPT就是加粗的,如果不加safe那么显示出来的就是纯文本<b>CPT</b>
{{ value|safe }}

striptags
取消所有Html标签,下面以例子说明:

# value = ‘<p><b>CPT</b></p>‘
# 那么输出的时候,只有CPT且没有加粗没有段落;如果不加的话会显示全部文本<p><b>CPT</b></p>
{{ value|striptags }}

linebreaks
让\n这种控制符号变化Html可以识别的

# value = ‘CPT\nCPT‘
# 那么输出的时候,会以这样的格式输出<p>CPT<br>CPT</p>,注意这些标签会生效,即会真的换行
# 很多时候在JS里调用字符串会产生语法错误,大部分情况是因为没有注意到\n的存在,想想为什么?
{{ value|linebreaks }}

truncatechars
这是今天介绍的四个filter中唯一一个带有参数的,用来截取字符串的一段,用法如下:

# value = ‘CPTTTTTTTTTTTT‘
# 那么输出的时候,会输出‘CPT‘
{{ value|truncatechars:3 }}

有了这四个工具之后我们来讨论一些具体问题,都是以上列举场景的详细情况。

不想显示出Html标签
一篇文章总有粗体或者什么的,总有红色蓝色的,也就说是必须要被装饰的,但是从数据库中取出来的只是一个长字符串,因此我们需要告诉前端如何显示这些文字,这个时候只需要简单的使用safe过滤器即可。

影响排版
往往问题都出现在什么时候呢?出现在截取字符串即truncatechars同时使用的时候,比如在首页的时候我只想显示某些文章的前100个字,也许采用truncatechars:100过滤器截取,可以采用以下方法:

{{ value|truncatechars:100|safe }}

但很多时候这样还是会出错,为什么呢?因为也许你截取的100个字符里Html语法本身就是错误的,比如有

却没有

。所以出错就很显然了,但是有些人这样用:

{{ value|safe|truncatechars:100 }}

想截取但不想渲染
很多情况都可以通过上面的句子解决,但有些时候我们并不想在首页显示文章摘要的时候渲染这些文字,比如正文中有些红红绿绿的字,但是我们显示摘要的时候只想显示纯黑色得字,怎么办呢?没错,把上面的safe直接改成striptags即可。

在Js里调用
但情况再恶心点,比如你在Js里调用,你还得考虑什么?没错Js是不支持换行的引号的,就是说Js里的引号只支持到一行,下面的语法在Js里是错误的:

var s = ‘aaaaa
         bbbb‘

但是我们不能保证从数据库中取出来的东西都没有换行,也许你还想截取前100个字符,也许你还想不显示这些html标签,好吧,看下面的代码:

{{ value|striptags|truncatechars:100|linebreaks }}

再恶心一点?
你其实会发现空格,大于号,小于号这些东西会以 , <这些形式储存的,所以上面的语句执行之后可能还有会 这种神奇的东西!如果这些东西出现在首页,那是要死的节奏啊。所以下面这条语句完美解决,好吧,我得了不用上四个过滤器会死的病:

{{ value|striptags|safe|truncatechars:100|linebreaks }}
 
 

 

实例2

需求:通过以键方式从字典中取值,如 test[key]=value

views.py

from django.template import RequestContext
from django.shortcuts import render_to_response
def view(request)
    dicts = {"key1": 1, "key2": 2, "key3": 3, } 
    return render_to_response("index.html",  {"dicts":dicts,},context_instance = RequestContext(request)) 

1.在app目录下建立templatetags/在此目录下建立空文件__init__.py和myfilter.py
2.在myfilter.py编辑

 
from django import template

register = template.Library()

def key(d,key_name):
        value = 0
        try:
                value = d[key_name]
        except KeyError:
                value = 0
        return value
register.filter(key‘,key)
 

3.在模板中使用

{% load myfilter %} #加载自定认标签
{{dicts|key:"key1"}}
 

以上是关于html的标签里代表加粗的标签是啥?的主要内容,如果未能解决你的问题,请参考以下文章

HTML语义化是啥意思?

标签语义化对 SEO 来说有多重要

font-weight字体加粗

交流分享|HTML5打卡第二天

JavaScript 里,$ 代表什么?/JQuery是什么语言?/html中用link标签引入css时的中 rel="stylesheet"属性?/EL表达式是什么?

html表格中的tr、 td、 td分别是啥意思