我有一些带有CSS的HTML和一个实例,其中我使用了自定义HTML标记,而不是<p>
它显示出来,我的CSS选择了标记,而另一个则无法显示文本。如果我更换
它显示<title>Layout Controls</title>
<p>Layout Controls</p>
。
我在JSfiddle上放了一个demo up。 JS在我的浏览器和Coda2中工作,但在JS小提琴中不起作用。如果有人能指出那对我来说是什么,那么就小提琴而言,我可能做错了。
如果有任何最佳实践评论,那么人们也很乐意让我这样做,在这里学习。
<body>
<div class="input_group_box">
<title>Layout Controls</title><br />
<sub-title>X-Position</sub-title><br />
<input id="/layout/1/slider" class="slider" type="range" value="0" min="-1" max="1" step="0.001" onclick="bind('/layout/1', 'slider', parseInt(this.value*1000)/1000)" />
<input id="/layout/1/number" class="number-box" type="number" value="0" min="-1" max="1" step="0.01" onclick="bind('/layout/1', 'number', parseFloat(this.value))" /><br />
</div>
</body>
任何人都没有为什么我的Javascript没有绑定演示中的两个输入。可能是我需要更改JSFiddle加载设置我在黑暗中有点。
答案 0 :(得分:3)
使用自定义标签存在一些问题,请参阅例如Using custom HTML Tags。它们会使编码变得更容易,但大多数情况下并不是一个好主意。请改用类,例如<div class=sub-title>...</div>
。但是如果某个标题是标题,请考虑使用标题标记,例如h2
和h3
。对于表单字段,您也可以在legend
内使用fieldset
。
title
元素是一个不同的情况,因为它始终在HTML中定义并具有特殊的角色和处理。仅允许head
部分。如果你把它放在body
里面,效果取决于浏览器。
答案 1 :(得分:2)
<title>
是MTML5标记,不是自定义标记。
尝试使用它的CSS。没关系:
title {
font-size: 16px;
font-family: HelveticaNeue-Bold, sans-serif;
display: inline;
}
答案 2 :(得分:1)
我怀疑<title>
标记是为页面标题保留的,您不应该将其用于任何其他目的......