我想这样的事情可以用JavaScript来完成。类似于
document.createHTMLElement
,但是有能力设计你自己的元素(和标签)。document.createHTMLElement
,但是有能力设计你自己的元素(和标签)。不,没有。
HTML元素受限于浏览器的处理能力。也就是说,如果您创建了一个自定义的Firefox插件,并让它处理您的特殊标签,那么您“可能”可以做到这一点,但其实取决于“做到”的不同解释。您可以在此处找到特定HTML版本的所有元素列表:http://www.w3.org/TR/html4/index/elements.html
然而,您可能并不想这样做。如果您想要“组合”几个现有元素以便它们一起运作,那么可以使用JavaScript轻松实现。例如,如果您想要一个复选框,在单击时显示某个地方的下拉列表,并填充其中的各种内容,您可以这样做。
也许您可以详细说明您实际想要实现的目标,我们可以提供更多帮助。
是的,你可以创建自己的标签。你需要创建一个模式并在页面上导入它,并编写一个JavaScript层将你的新标签转换为现有的HTML标签。
例如,fbml
(Facebook标记语言)包括Facebook编写的模式和JavaScript层。请参见:Open Graph协议。
使用它,你可以轻松地制作一个“喜欢”按钮:
<fb:like href="http://developers.facebook.com/" width="450" height="80"/>
这是一个有效的问题,但我认为从UI方面来看,游戏的名称是渐进式标记。首先构建有效的w3兼容标签,然后使用javascript(在我的情况下是Jquery或Dojo)和CSS适当地进行样式设置。一段良好编写的CSS代码可以反复使用(我最喜欢的案例是带有themeroller的Jquery UI),只需在类声明中添加一个或两个单词即可为页面上的任何元素设置样式。
以下是一些相对简单的Jquery / Javascript / CSS解决方案:
http://www.filamentgroup.com/examples/customInput/ http://aaronweyenberg.com/90/pretty-checkboxes-with-jquery http://www.protofunc.com/scripts/jquery/checkbox-radiobutton/
这是即将推出(且很有前途)的JqueryUI表单元素更新的规格说明:http://wiki.jqueryui.com/Checkbox
如果您需要验证输入,这是一种使用单个类或ID标记进行内联验证的简单方法:http://www.position-absolute.com/articles/jquery-form-validator-because-form-validation-is-a-mess/
好吧,我的解决方案不是一个10个字符、一行代码的解决方案。然而,除了Jquery代码之外,每个单独的标记都不会超过:
<input type="checkbox" id="theid">
因此,虽然会有一些中等大小的Jquery代码块,但单个元素非常小,这对于像我上一个项目那样重复250次(以编程方式)非常重要。它易于编码,降级良好,验证良好,并且由于渐进式标记将在用户端进行,因此在服务器端几乎没有成本。
我的当前项目是Symfony - 不是我的选择 - 它使用复杂而笨重的服务器端标记来呈现表单元素,验证,执行javascript onclick,样式等。这似乎是您最初要求的...让我告诉您,它很笨重。调用链接的一个标记可能长达10行代码!在被迫这样做之后,我不是粉丝。
不,没有这样的方法。此外,在HTML5中也不允许这样做。
可以看一下Ample SDK JavaScript GUI库,它可以在客户端启用任何自定义元素或事件命名空间(例如XUL),而不会干扰HTML5规则。
可以查看一下XUL比例元素的实现方式:http://github.com/clientside/amplesdk/blob/master/ample/languages/xul/elements/scale.js以及其默认样式表:http://github.com/clientside/amplesdk/blob/master/ample/languages/xul/themes/default/input.css
随着新兴的 W3 Web Components 标准的出现,特别是 Custom Elements spec,您现在可以创建自己的自定义 HTML 元素,并使用 document.register()
DOM 方法将它们注册到解析器中。
X-Tag 是一个有用的糖库,由 Mozilla 开发,使得使用 Web Components 更加容易,可以看一下:X-Tags.org