试着理解规则,而不是记住规则

MDN上有一段关于li元素的说明:

The HTML <li> element is used to represent an item in a list. It must be contained in a parent element: an ordered list (<ol>), an unordered list (<ul>), or a menu (<menu>).

li元素必须在<ol>、<ul>、<menu>里面。

这是一条规则,如果只是记住这条规则没有问题,但时间长了可能就忘记了,而我比较推荐的方法是“试着理解规则背后的原因”。可能理解的不一定对,但学习不就是一个不断修正的过程嘛。

我的理解是这样的。ol是ordered list的缩写,ul是unordered list的缩写,li是list item的缩写。有没有觉得ol ul 就和集合一样,而li就和集合中的元素一样,元素一定是属于某个集合的。

时间: 2024-10-14 19:49:55

试着理解规则,而不是记住规则的相关文章

【java规则引擎】之规则引擎解释

转载:http://www.open-open.com/lib/view/open1417528754230.html 现实生活中,规则无处不在.法律.法规和各种制度均是:对于企业级应用来说,在IT技术领域,很多地方也应用了规则,比如路由表,防火墙策略,乃至角色权限控制(RBAC),或者Web框架中的URL匹配.不管是那种规则,都规定了一组确定的条件和此条件所产生的结果. 举一个例子: IF 汽车是红色车是运动型的驾驶员是男性驾驶员在16-25岁之间THEN 保险费用增加20% 从这个例子可以看

【java规则引擎】简单规则的rete网络示意图

一个Fact通过Session添加到规则网络中,如何进行规则匹配的大致过程如下 (1)通过根结点对象从EntryPointNode的Map集合中找到相应的EntryPointNode对象 (2)EntryPointNode对象有一个ObjectTypeNode的Map集合,把fact的class转化成ClassObjectType,从该集合中找到ObjectTypeNode (3)OjectTypeNode对象的sink属性引用着这个fact事实的规则网络 (4)从sink属性中的链表中拿出一个

理解SVG的图形填充规则

SVG的图形填充规则通过fill-rule属性来指定. 有效值:   nonzero | evenodd | inherit 默认值:   nonzero fill-rule属性用于指定使用哪一种算法去判断画布上的某区域是否属于该图形“内部” (内部区域将被填充).对一个简单的无交叉的路径,哪块区域是“内部” 是很直观清除的.但是,对一个复杂的路径,比如自相交或者一个子路径包围另一个子路径,“内部”的理解就不那么明确了. nonzero 字面意思是“非零”.按该规则,要判断一个点是否在图形内,从

CSS特异性(CSS Specificity)的细节之CSS样式权重的计算与理解(CSS样式覆盖规则)

本篇讲解CSS特异性(CSS Specificity)的细节,也就是CSS样式选择器的权重计算 通过计算选择器的权重(weight)最终决定哪个选择器将获得优先权去覆盖其他选择器的样式设定,即"优先原则(priority rules)"! 首先,我们来一个简单的例子: <body> <ul id="summer-drinks"> <li class="favorite">First section</li

【java规则引擎】java规则引擎搭建开发环境

Drools官网:http://www.jboss.org/drools Drools and jBPM consist out of several projects:(Drools软件包提供的几个部分的功能) Drools Guvnor (Business Rules Manager) (规则集管理器) Drools Expert (rule engine)                      (规则引擎) jBPM 5 (process/workflow)              

Wireshark 【OSI二层】抓包过滤规则和显示过滤规则实例

wireshark的主界面示例如下: 抓包规则正确:过滤器对话框显示为"绿色"抓包规则错误:过滤器对话框显示为"橘色" 抓包过滤器Ethernet过滤器(OSI第二层过滤器) #ether host 8c:ec:4b:69:a6:a7 抓取以太网流量的源或目的MAC地址(比如:ether host 00:00:5e:00:53:00) #ether dst host 8c:ec:4b:69:a6:a7 #ether dst 8c:ec:4b:69:a6:a7 抓取以

试着理解下kvm

kvm,一台物理机,一个操作系统,在这个操作系统中隔离,这是docker: 反思:一个物理机上只能有一个操作系统系统存在么?操作系统无非是一套软件而已,在特殊的偏移地址上: 为啥一台物理机上不能驻扎两个操作系统?!(振聋发聩的一问) 我们想想如果有两个操作系统会发生啥事情. 1)进程执行层面:我们通过fork去执行一个进程,然后这个进程开始在自己的虚拟地址执行执行执行,在用户态都好好的,但是一旦要访问系统的硬件资源,就需要陷入到内核里,使用int3,使用trap,然后操作系统这里会陷入到0xff

编码规范之命名规则---变量名定义规则

个人也是大众的良好风格 1.书写风格:驼峰式 int netWork 类似的帕斯卡命名法 总共有三种 http://baike.baidu.com/view/8042085.htm?fr=aladdin#3 2.前缀: 全局带g 结构体.类内成员带m 指针类型带p 带数据类型前缀的为匈牙利式 3.结构体定义 typedef struct NetWork_Param_{ int num; SocketInfo m_SocketInfo;}NetWork_Param; 4.其他细节 http://w

详细解析 nginx uri 如何匹配 location 规则

location 是 nginx 配置中出现最频繁的配置项,一个 uri 是如何与多个 location 进行匹配的? 在有多个 location 都匹配的情况下,如何决定使用哪一个 location 作为匹配结果? 清晰内部机制之后,疑问自然迎刃而解. location 规则类型 根据官方文档,location 配置语法如下 Syntax: location [ = | ~ | ~* | ^~ ] uri { ... } location @name { ... } Default: - Co