输入类型=“提交”是否总是在浏览器中呈现为按钮?

时间:2012-10-13 10:02:33

标签: asp.net html

我在ASP.NET生成的页面中看到了以下代码段。

<input name="ctl00$MainContent$Button1" id="MainContent_Button1" type="submit" value="Button">

问题是,

type =“submit”控件是否始终在浏览器中呈现为按钮

这对Coded UI测试代码的编写方式有直接影响,如果是Button,则应使用 HtmlInputButton ,否则,我们需要使用其他类型来表示输入元素

2 个答案:

答案 0 :(得分:1)

嗯,好像是内容与造型混淆。

输入的submit类型告诉渲染客户端这个特定的输入元素应该在触发时发布它所包含的表单(例如,通过鼠标点击)。

无论如何,当前的浏览器都包含了默认样式表样式/将这些输入呈现为按钮。但是默认样式并不是必需的,因此也可以在自制的HTML / CSS客户端中省略。

示例:按钮的Webkit默认样式:

input[type="button"], input[type="submit"], input[type="reset"] {
    -webkit-appearance: push-button;
    -webkit-box-align: center;
    display: inline-block;
    box-sizing: border-box;
    cursor: default;
    padding: 1px 6px;
    font: -webkit-small-control;
    white-space: pre;
    text-align: center;
    border: 2px outset buttonface;
    border-image: initial;
    color: buttontext;
    background-color: buttonface;
    -webkit-rtl-ordering: logical;
    -webkit-user-select: text;
}

答案 1 :(得分:1)

没有。浏览器可以以不同的方式显示元素,或者它可以不显示任何内容(例如,如果它是听觉浏览器)。图形浏览器通常将input type="button"显示为按钮,但可以使用CSS或JavaScript(可能更改type属性)来更改。按钮的视觉外观可能会有很大差异;对视觉上的按钮构成没有严格的定义。