---
title: "<button> eller <input type=\"button\">?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/html-css/73469-button-eller-input-type-button"
topic: "HTML & CSS"
topic_url: "https://www.webforum.nu/amne/html-css"
author: "Jesper T"
published: "2003-04-07T16:37:05.000Z"
updated: "2003-04-08T11:33:02.000Z"
replies: 7
views: 430
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/html-css/73469-button-eller-input-type-button"
---

# <button> eller <input type="button">?

## #1 — Jesper T, 2003-04-07T16:37Z

Vilken syntax är igentligen rätt?

Permalänk: https://www.webforum.nu/p/73469

## #2 — Jojoxx, 2003-04-07T16:40Z

Båda. Det beror på vilken html-version du vill validera mot. Men jag lägger över det i html-forumet. :)

Permalänk: https://www.webforum.nu/p/1002761

## #3 — m_soderlund, 2003-04-08T06:28Z

Och vill du köra XHTML, vilket faktiskt rekommenderas, skriver du så här:

```
<input type="button" Value="Klicka" [b]/>[/b]
```

Permalänk: https://www.webforum.nu/p/1005994

## #4 — Erik Juhlin, 2003-04-08T09:15Z

Nja, kör man med XHTML så är det väl \<button\> som är det mest korrekta...

Permalänk: https://www.webforum.nu/p/1006066

## #5 — jarvklo, 2003-04-08T11:12Z

Hmm...
Båda är alltså lika "korrekta" men de fungerar lite olika och kan därför användas till lite olika saker...

```
<input type="button" name="knappen" value="Klicka" ... ... ... />
```

är deklarerad som EMPTY (dvs allt innehåll i knappen definieras via dess attributvärden ... medan

```
<button name="knappen" value="Klicka" ><div>Härvare innehåll i en divtagg</div></button>
```

 alltså får innehålla det mesta utom en länk eller en annan formulär-relaterad tagg...
Se även <http://www.w3.org/TR/html4/interact/forms.html#h-17.5> ... 

> Buttons created with the BUTTON element function just like buttons created with the INPUT element, but they offer richer rendering possibilities: the BUTTON element may have content. For example, a BUTTON element that contains an image functions like and may resemble an INPUT element whose type is set to "image", but the BUTTON element type allows content.

Och går man till DTD:n (för xhtml 1.0 Strict i detta fall ;) ) så ser man också att bägge är helt kosher:

```
<!ENTITY % InputType
  "(text | password | checkbox |
    radio | submit | reset |
    file | hidden | image | button)"
   >

<!-- the name attribute is required for all but submit & reset -->

<!ELEMENT input EMPTY>     <!-- form control -->
<!ATTLIST input
  %attrs;
  %focus;
  type        %InputType;    "text"
  name        CDATA          #IMPLIED
  value       CDATA          #IMPLIED
  checked     (checked)      #IMPLIED
  disabled    (disabled)     #IMPLIED
  readonly    (readonly)     #IMPLIED
  size        CDATA          #IMPLIED
  maxlength   %Number;       #IMPLIED
  src         %URI;          #IMPLIED
  alt         CDATA          #IMPLIED
  usemap      %URI;          #IMPLIED
  onselect    %Script;       #IMPLIED
  onchange    %Script;       #IMPLIED
  accept      %ContentTypes; #IMPLIED
  >
```

\-- och -- 

```
<!ENTITY % button.content
   "(#PCDATA | p | %heading; | div | %lists; | %blocktext; |
    table | %special; | %fontstyle; | %phrase; | %misc;)*">

[ ... ]
<!--
 Content is %Flow; excluding a, form and form controls
--> 
<!ELEMENT button %button.content;>  <!-- push button -->
<!ATTLIST button
  %attrs;
  %focus;
  name        CDATA          #IMPLIED
  value       CDATA          #IMPLIED
  type        (button|submit|reset) "submit"
  disabled    (disabled)     #IMPLIED
  >
```

\---
Hur det sedan står till med kompatibiliteten (dvs hur olika webbläsare klarar av de två alternativen) är (som alltid) en \*helt\* annan historia ;)
Men en antydan finns bl.a. på 
<http://blooberry.com/indexdot/html/tagpages/b/button.htm>
och
<http://blooberry.com/indexdot/html/tagpages/i/inputbutton.htm>
\- där ser man att \<input type="button" /\> är mer "bakåtkompatibel" - medan \<button\>....\</button\> stöds av IE4+ och NN6+/Moz/O5+ (dvs de vanligaste "moderna" webbläsarna ;) )

Permalänk: https://www.webforum.nu/p/1006117

## #6 — Sammy86, 2003-04-08T11:19Z

Ni som skriver xhtml, glöm inte att alla stopptaggar måste finnas med.

Permalänk: https://www.webforum.nu/p/1006123

## #7 — jarvklo, 2003-04-08T11:25Z

Jupp

```
<input ... ... />
```

 och  

```
<button> .... </button>
```

 gäller i XHTML
Kör man HTML är det 

```
<input ... ...>
```

 och 

```
<button> ... </button>
```

 :e ;)

Permalänk: https://www.webforum.nu/p/1006129

## #8 — m_soderlund, 2003-04-08T11:33Z

> **Erik Juhlin skrev:**
>
> Nja, kör man med XHTML så är det väl \<button\> som är det mest korrekta...

Njae, \<input type="button" value="something" /\> är lika korrekt - det valideras enligt W3C! Bevis? [Klicka här](http://validator.w3.org/check?uri=http%3A%2F%2Fwww.dileno.hel.nu%2Fmartin%2Fdefault.asp%3Fcat%3Dcontact). :)
Sidan som validerades var [den här](http://www.dileno.hel.nu/martin/default.asp?cat=contact).

Permalänk: https://www.webforum.nu/p/1006134

---

Tråden på webben: https://www.webforum.nu/amne/html-css/73469-button-eller-input-type-button
