一种建立标签与样式规则绑定关系的方法和装置的制造方法

文档序号:9249266阅读:287来源:国知局
一种建立标签与样式规则绑定关系的方法和装置的制造方法
【技术领域】
[0001]本公开是关于计算机技术领域,尤其是关于一种建立标签与样式规则绑定关系的方法和装置。
【背景技术】
[0002]随着计算机技术的发展,各类的终端得到了广泛的普及,成为了人们获取信息的重要工具。网页、电子文档等是信息的主要载体,一个网页或电子文档(如电子书)可以由 HTML (Hyper Text Mark-up Language,超文本标记语言)文件与 CSS (Cascading StyleSheets,级联样式表)文件组成。
[0003]HTML文件是由多个标签组成,用于提供网页或电子文档的具体内容,CSS文件是由多个样式规则构成,每一个样式规则由样式选择器(或称选择器)和样式声明组成,其中,选择器用于决定样式规则是针对HTML文件中的哪些标签,样式声明用于决定相应的标签的显示样式。在网页或电子文档的加载过程中需要进行HTML文件内容与CSS文件内容的匹配过程,即标签与样式规则的匹配过程,以确定HTML文件每个标签对应的样式规则,以进行后续的显示。
[0004]现有的标签与样式规则的匹配过程是:获取HTML文件关联的CSS文件,生成CSS文件内的所有样式规则的线性列表,遍历HTML文件中的标签,针对遍历到的每一个标签顺序查阅线性列表,找到与该标签匹配的所有样式规则。
[0005]在实现本公开的过程中,发明人发现至少存在以下问题:
[0006]基于上述的标签与样式规则的匹配过程,遍历HTML文件中的标签时,对于其中的每一个标签都是顺序查阅线性列表中的所有的样式规则,往往HTML文件中标签的数目以及CSS文件中样式规则的数目都比较大,导致标签与样式规则的匹配效率较低。

【发明内容】

[0007]为了克服相关技术中存在的问题,本公开提供了一种建立标签与样式规则绑定关系的方法和装置。所述技术方案如下:
[0008]根据本公开实施例的第一方面,提供一种建立标签与样式规则绑定关系的方法,所述方法包括:
[0009]获取待匹配的HTML文件和CSS文件;
[0010]根据所述CSS文件中的各选择器所包含的原子选择器,将所述各选择器划分为多个选择器分类;
[0011]遍历所述HTML文件中标签,对于每个遍历到的标签,如果根据其包含的标签名、标签属性和对应的属性值,确定在所述多个选择器分类中存在其对应的第一选择器分类,则在所述第一选择器分类所包含的选择器中,查找与所述遍历到的标签相匹配的第一选择器,并建立所述遍历到的标签与所述第一选择器所属样式规则的绑定关系。
[0012]可选的,所述根据所述CSS文件中的各选择器所包含的原子选择器,将所述各选择器划分为多个选择器分类,包括:
[0013]根据所述CSS文件中的各选择器的第一级简单选择器所包含的原子选择器,将所述各选择器划分为多个选择器分类。
[0014]可选的,所述根据所述CSS文件中的各选择器的第一级简单选择器所包含的原子选择器,将所述各选择器划分为多个选择器分类,包括:
[0015]根据所述CSS文件中的各选择器的第一级简单选择器所包含的元素选择器对应的标签名,将所述各选择器划分为多个选择器分类。
[0016]可选的,所述根据所述CSS文件中的各选择器的第一级简单选择器所包含的原子选择器,将所述各选择器划分为多个选择器分类,包括:
[0017]根据所述CSS文件中的各选择器的第一级简单选择器所包含的元素选择器对应的标签名和包含的非元素选择器对应的标签属性、属性值,将所述各选择器划分为多个选择器分类。
[0018]可选的,所述方法还包括:
[0019]如果所述遍历到的标签与多个样式规则建立绑定关系,则根据所述多个样式规则中每个样式规则的选择器的顺序信息和/或权重信息,在所述多个样式规则中选取目标样式规则,取消所述目标样式规则之外的其它样式规则与所述遍历到的标签的绑定关系。
[0020]根据本公开实施例的第二方面,提供一种建立标签与样式规则绑定关系的装置,所述装置包括:
[0021]获取模块,用于获取待匹配的HTML文件和CSS文件;
[0022]分类模块,用于根据所述CSS文件中的各选择器所包含的原子选择器,将所述各选择器划分为多个选择器分类;
[0023]绑定模块,用于遍历所述HTML文件中标签,对于每个遍历到的标签,如果根据其包含的标签名、标签属性和对应的属性值,确定在所述多个选择器分类中存在其对应的第一选择器分类,则在所述第一选择器分类所包含的选择器中,查找与所述遍历到的标签相匹配的第一选择器,并建立所述遍历到的标签与所述第一选择器所属样式规则的绑定关系O
[0024]可选的,所述分类模块,用于:
[0025]根据所述CSS文件中的各选择器的第一级简单选择器所包含的原子选择器,将所述各选择器划分为多个选择器分类。
[0026]可选的,所述分类模块,用于:
[0027]根据所述CSS文件中的各选择器的第一级简单选择器所包含的元素选择器对应的标签名,将所述各选择器划分为多个选择器分类。
[0028]可选的,所述分类模块,用于:
[0029]根据所述CSS文件中的各选择器的第一级简单选择器所包含的元素选择器对应的标签名和包含的非元素选择器对应的标签属性、属性值,将所述各选择器划分为多个选择器分类。
[0030]可选的,所述装置还包括取消模块,用于:
[0031]如果所述遍历到的标签与多个样式规则建立绑定关系,则根据所述多个样式规则中每个样式规则的选择器的顺序信息和/或权重信息,在所述多个样式规则中选取目标样式规则,取消所述目标样式规则之外的其它样式规则与所述遍历到的标签的绑定关系。
[0032]根据本公开实施例的第三方面,提供一种建立标签与样式规则绑定关系的装置,包括:
[0033]处理器;
[0034]用于存储处理器可执行指令的存储器;
[0035]其中,所述处理器被配置为:
[0036]获取待匹配的HTML文件和CSS文件;
[0037]根据所述CSS文件中的各选择器所包含的原子选择器,将所述各选择器划分为多个选择器分类;
[0038]遍历所述HTML文件中标签,对于每个遍历到的标签,如果根据其包含的标签名、标签属性和对应的属性值,确定在所述多个选择器分类中存在其对应的第一选择器分类,则在所述第一选择器分类所包含的选择器中,查找与所述遍历到的标签相匹配的第一选择器,并建立所述遍历到的标签与所述第一选择器所属样式规则的绑定关系。
[0039]本公开的实施例提供的技术方案可以包括以下有益效果:
[0040]本公开实施例中,本公开实施例中,获取待匹配的HTML文件和CSS文件,根据所述CSS文件中的各选择器所包含的原子选择器,将所述各选择器划分为多个选择器分类,遍历所述HTML文件中标签,对于每个遍历到的标签,如果根据其包含的标签名、标签属性和对应的属性值,确定在所述多个选择器分类中存在其对应的第一选择器分类,则在所述第一选择器分类所包含的选择器中,查找与所述遍历到的标签相匹配的第一选择器,并建立所述遍历到的标签与所述第一选择器所属样式规则的绑定关系。这样,终端可以根据遍历到的标签的信息,在多个选择器分类中确定该标签对应的选择器分类,再在此分类中查找标签所匹配的选择器,无需顺序查阅所有的选择器,提高了标签与样式规则的匹配效率。
[0041]应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
【附图说明】
[0042]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。在附图中:
[0043]图1是根据一示例性实施例示出的一种建立标签与样式规则绑定关系的方法流程图;
[0044]图2是根据一示例性实施例示出的一种选择器分类示意图;
[0045]图3是根据一示例性实施例示出的一种建立标签与样式规则绑定关系的装置结构示意图;
[0046]图4是根据一示例性实施例示出的一种建立标签与样式规则绑定关系的装置结构示意图;
[0047]图5是根据一示例性实施例示出的一种终端的结构示意图。
[0048]通过上述附图,已示出本公开
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1