输入隐藏或div显示:无css?

问题描述:

在我们的项目中,我们都使用inputtype=hidden元素和divsdisplay:none CSS用于存储HTML页面上的一些数据没有它显示给用户。输入隐藏或div显示:无css?

所以我不知道哪种方式更适合在性能和代码的完整性和HTML语法?

+0

你可以进入有关这些数据如何使用更多的细节和它从何而来? –

隐藏输入时将忽略该文件(CSS)的样式规则隐藏起来,这可能使它更好的性能明智的,但我没有数据显示这一点。话虽如此,输入控件意味着作为表单的一部分提交。

还有其他的方法为好,如HTML5自定义数据属性或使用脚本标签:

<!-- Custom data attribute --> 
<div id="product" data-id="42"> 
    <h1>Product name</h1> 
</div> 

<!-- JSON data embedded in a script tag --> 
<script type="application/json"> 
    { "id": 42 } 
</script> 

我认为,第一溶液(具有输入类型=隐藏)是更漂亮,因为第二溶液依赖于CSS,可在浏览器被停用,而数据将显示给用户。

语义决定了答案是 - 它取决于你如何使用它。

如果需要提交的表单中的数据或者是密切相关的一种形式,然后使用输入。我不确定哪些情况不会属于该类别,因为如果用户不应该看到它,那么仅在一个页面上使用的数据可以存储在JavaScript变量中。

+0

例如,你显示了一个人的列表,并希望从用户隐藏他们的ID,但它是在点击事件中需要的。 – LostMohican

+0

您是否考虑过使用属性?例如id =“person123”或rel =“123”? –

+0

看起来应该更新这个以提及html5数据属性。这是一个非常简单的方法来存储和拉动信息使用javascript或jquery轻而易举。我找不到一个简明的例子来链接,但如果你谷歌一些文章,你可以快速拼凑它如何工作。 –

有参与绩效的因素很多。但是,除非您存储大量数据,否则性能差异可能难以区分。

什么是最好的代码的完整性和语义取决于数据以及如何使用它。

有用于存储数据的许多选项:在隐藏输入了用于与使用形式是大