HTML5

Novajhoj: Atributoshanghoj

En HTML5 okazis multaj diversaj shanghoj, kiuj rilatas al atributoj de elementoj.

Bazaj atributoj

Pluraj atributoj, kiuj ekzistis jam en HTML 4, nun estas uzeblaj che chiaj elementoj. Tiaj atributoj estas nomataj bazaj atributoj. Ili estas accesskey, class, dir, id, lang, style, tabindex kaj title. Krome la atributo xml:space, kiu ekzistis jam en XHTML 1.0, kaj kiu havas sencon nur en XHTML5 (kaj nur en tre specialaj okazoj), estas nun principe uzebla che chiaj elementoj (ghi indikas, kiel spacosignojo estu traktataj).

En HTML5 aldonighis ankorau pliaj bazaj atributoj:

  • La atributo contenteditable indikas, ke la elemento estas redaktebla. La uzanto povas shanghi la elementon kaj manipuli ties HTML-markojn.
  • La atributo contextmenu povas montri kuntekstan menuon provizitan de la paghokreinto.
  • Chia ajn atributo, kies nomo komencighas per data-, estas libere uzebla lau la bontrovo de la paghokreanto por specialaj celoj. Tio estas aparte klarigita en la pagho “Novajhoj: data-atributoj“.
  • La atributoj draggable (= “shovebla”) kaj dropzone (= ”demetozono”) povas esti uzataj kune kun la nova HTML5-a aplikprograma interfaco por shovado kaj demetado de elementoj. Tiu interfaco jam estas sufiche bone regata de pluraj TTT-legiloj (sed ne de chiuj). Chi tie tamen provizore ne aperas pliaj klarigoj pri tiu temo.
  • La bulea atributo hidden indikas, ke elemento ne estas valida (ne plu valida au ankorau ne valida), kaj sekve ordinare kashita de la uzanto. Unu ekzemplo povas esti parto de pagho, kiu estu montrata nur post kiam la uzanto ensalutis (per uzantonomo kaj pasvorto). Por neensalutintaj uzantoj tiu parto ne estas sencohavo, kaj sekve ghi ne estu montrata.
  • La atributoj role kaj aria-* povas esti uzataj por doni instrukciojn al asistaj tehhnikoj (ekzemple helpiloj por blindaj uzantoj). La uzo de tiuj atributoj estas grava, sed tre kompleksa temo, kiun mi provizore ne klarigas chi tie.
  • La atributo spellcheck indikas, chu la enhavo de la elemento estas submetinda al literuma kaj gramatika kontrolado. La eblaj valoroj estas true (= vera, t.e. kontrolado povas okazi), false (= falsa, t.e. kontrolado ne okazu) kaj malpleno (neniu valoro, kio signifas, ke uzighu la defaulto, kiu eventuale estas la valoro de la patra elemento). Tia kontrolado povas esti plenumata de funkcioj en la TTT-legilo mem, de kromprogramo, de Javaskripto, au alimaniere.

Krome en HTML5 chiuj eventaj atributoj de HTML4, kun la formo onEVENTO-NOMO (t.e. onclick, onmouseover, onchange k.a.), estas bazaj atributoj. Aldone HTML5 enkondukas plurajn novajn tiajn bazajn atributojn eventajn por nove difinitaj eventoj, ekzemple onplay por la evento play (= “ludigo”) uzata de la aplikprograma interfaco de elementoj kiel video kaj audio.

Novaj nebazaj atributoj

En HTML5 estis enkondukitaj pluraj novaj atributoj de jamaj elementoj. Multaj el tiuj novaj atributoj ankorau ne funkcias en la hodiauaj TTT-legiloj. (Tie, kie temos chi-poste pri atributoj de formularaj elementoj, pliaj detaloj ofte trovighas en la pagho pri formularoj.)

  • La elementoj a kaj area nun povas havi la atributon media.
  • La elemento area nun havas la novajn atributojn hreflang, type kaj rel.
  • La elemento base povas havi la atributon target.
  • La elemento meta povas havi la atributon charset.
  • La nova atributo autofocus povas esti uzata che la elementoj input (krom kiam ties type-atributo havas la valoron hidden), select, textarea kaj button. Ghi indikas ke la koncerna elemento automate ricevu fokuson che la unua shargo de la pagho.
  • La nova atributo placeholder povas esti uzata che la elementoj input kaj textarea; Ghi indikas helpan sugeston pri enmetado de datumoj. Ekzemple:

    <input type="email" placeholder="iu@example.com"/>
  • La nova atributo form povas esti uzata che la elementoj input, output, select, textarea, button, label, object kaj fieldset. Per ghi eblas ligi tian elementon al formularo (en HTML5 formularaj elementoj rajtas esti metitaj ien ajn, ne nur ene de form-elemento). Ekzemple:

    <label>Retposhto: 
      <input type="email" form="miaformularo" name="retposhto"/>
    </label>
    [...]
    <form id="miaformularo">[...]</form>
  • La nova atributo required povas esti uzata che la elementoj input (krom kiam ties atributo type havas la valoron hidden, image, submit au alian butonecan valoron), select kaj textarea. Ghi indikas, ke la uzanto devas enmeti ian valoron en tiun formularan kampon por povi forsendi la formularon; en la okazo de select-elemento ties unua option-elemento tiam devas havi malplenan valoron. Ekzemple:

    <label>Koloro: <select name="koloro" required="required">
      <option value="">Bv. elekti koloron</option>
      <option>Rugho</option>
      <option>Verd</option>
      <option>Bluo</option>
    </select></label>
  • La nova bulea atributo disabled povas esti uzata che la elemento fieldset. Ghi malaktivigas chiujn formularajn ilojn ene de tiu fieldset; krome fieldset-elemento povas nun havi la atributon name, kiu povas utili che manipulado per Javaskripto.
  • La elemento input havas plurajn novajn atributojn, kiuj diversmaniere limigas la eblajn valorojn kaj uzojn: autocomplete, min, max, multiple, pattern kaj step. Krome input havas la novan atributon list, kiu povas uzighi kunlabore kun la nova elemento datalist. input-elementoj nun havas ankau la atributojn width kaj height, kiuj povas indiki (en bilderoj) respektive la larghon kaj la alton de la koncerna bildo, kiam la type-atributo de la input-elemento havas la valoron image.
  • La elementoj input kaj textarea havas novan atributon dirname, kiu specifas nomon de plia kampo automate aldonota al tiuj kampoj, kiuj estos senditaj kun la formularo. La valoro de tiu plia kampo estos la tekstodirekto (ltr, = “demaldestre-dekstren” au rlt = “dedekstre-maldekstren”) de tiuj datumoj, kiujn enhavas la baza input-elemento au textarea-elemento (tiuj valoroj povas esti shanghataj de la uzanto, kiam tiu enskribas la datumojn).
  • La elemento textarea havas la du novajn atributojn maxlength kaj wrap, kiuj indikas respektive la maksimuman datumlongon kaj la linifaldan konduton de la textarea-elemento.
  • La elemento form havas novan bulean atributon novalidate, kiu povas esti uzata por malshalti automatan kontroladon de la formularo antau la forsendo.
  • La elementoj input kaj button havas la novajn atributojn formaction, formenctype, formmethod, formnovalidate kaj formtarget. Se tia atributo cheestas, ties valoro superregas la respondan valoron de la atributoj action, enctype, method, novalidate kaj target che la responda form-elemento.
  • La elemento menu havas la du novajn atributojn type kaj label. type indikas la tipon de la menuo: list (la defaulta valoro) = lista menuo, context = kunteksta menuo, toolbar = ilobreta menuo. label indikas etikedon uzotan, kiam la koncerna menuo aperas kiel submenuo en plurnivela menuo.
  • La elemento style havas la novan bulean atributon scoped, kiu povas esti uzata por limigi la validecon de la koncernaj stilreguloj al tiu elemento, kiu estas patro de la koncerna style-elemento, kaj al chiuj ties idaj elementoj.
  • La elemento script havas la novan atributon async, kiu povas (kunlabore kun la malnova bulea atributo defer) influi la shargadon de kaj plenumadon de la Javaskripta kodo de la script-elemento: Ghenerale, se cheestas async, la programkodo estos plenumita, kiam ghi estos havebla; se mankas async, sed cheestas defer, tiam la programkodo estos plenumita nur post plena shargo de la pagho; se mankas kaj async kaj defer, tiam la programkodo estos shargita kaj plenumita antau ol la paghoshargado estos daurigata. async povas esti uzata nur, se la Javaskripta kodo estas indikita pere de src-atributo.
  • La elemento html havas la novan atributon manifest, kiu indikas manifesto-dosieron uzotan, kiam la pagho estas programeca kaj sekvas la nova HTML5-a aplikprograma interfaco por senkonektaj TTT-aplikajhoj (TTT-paghaj programoj uzeblaj ankau sen Interreta konekto).
  • La elemento link havas la novan atributon sizes, kiu povas esti uzata, kiam la rel-atributo de la link-elemento havas la valoron icon. Tiam la href-atributo indikas piktogramon, kiu povas esti uzata por reprezenti au simboli la paghon, kaj la sizes-atributo indikas la haveblajn grandojn de tiu piktogramo. Ekzemple:

    <head>
    <title>Ekzemplo</title>
    <link rel="icon" href="favicon.png" sizes="16x16" type="image/png"/>
    <link rel="icon" href="windows.ico" sizes="32x32 48x48" type="image/vnd.microsoft.icon"/>
    <link rel="icon" href="mac.icns" sizes="128x128 512x512 8192x8192 32768x32768"/>
    <link rel="icon" href="iphone.png" sizes="57x57" type="image/png"/>
    <link rel="icon" href="gnome.svg" sizes="any" type="image/svg+xml"/>
    </head>

    sizes="any" signifas, ke la koncerna piktogramo estas skalebla (t.e. ghi povas esti transformita al ajna grando sen kvalitoperdo).

  • La elemento ol havas la novan bulean atributon reversed, kiu indikas, ke la listordo estas malkreska (alie ghi estas kreska). La komencan numeron tiam indikas la atributo start.
  • La elemento iframe havas la novan bulean atributon seamless, kiu indikas, ke la enhavo de la iframe estu prezentata kvazau ghi estus parto de la patra pagho (t.e. sen videblaj limoj).
  • La elemento iframe havas la novan atributon srcdoc, kiu enhavas HTML-kodon, kiu estu la enhavo de la koncerna iframe. Normale oni indikas tiun enhavon per url-o (adreso) de HTML-pagho en src-atributo. Oni povas uzi srcdoc kaj src samtempe. Tiam tiaj TTT-legiloj, kiuj komprenas scrdoc, uzas tiun HTML-kodon, dum aliaj TTT-legiloj uzas la dokumenton indikitan per src. Apenau iu TTT-legilo nun (en Junio 2011) komprenas srcdoc-on, sed jen tamen testopagho, kiu provas uzi la atributon srcdoc.
  • La elemento iframe havas la novan atributon sandbox, kiu povas indiki diversajn limigojn pri la uzo de la enhavo de la iframe (kiu povas enteni dangherajhojn, precipe se ghi venas de alia servilo). Char tiu sekureco-temo estas tre kompleksa kaj malfacila, kaj char ankorau (en Junio 2011) apenau iu TTT-legilo komprenas tiun atributon (la sola escepto estas la legilo Chrome), mi provizore ne donas chi tie pliajn klarigojn de tiu temo.

Forigitaj atributoj

Multaj malnovaj atributoj estis tute forigitaj en HTML5:

  • rev kaj charset che la elementoj link kaj a.
  • shape kaj coords che la elemento a.
  • longdesc che la elementoj img kaj iframe.
  • target che la elemento link.
  • nohref che la elemento area.
  • profile che la elemento head.
  • version che la elemento html.
  • name che la elemento img (uzu anstataue la atributon id).
  • scheme che la elemento meta.
  • archive, classid, codebase, codetype, declare kaj standby che la elemento object.
  • valuetype kaj type che la elemento param.
  • axis kaj abbr che la elementoj td kaj th.
  • scope che la elemento td.
  • summary che la elemento table.
  • align che la elementoj caption, iframe, img, input, object, legend, table, hr, div, h1, h2, h3, h4, h5, h6, p, col, colgroup, tbody, td, tfoot, th, thead kaj tr.
  • alink, link, text kaj vlink che la elemento body.
  • background che la elemento body.
  • bgcolor che la elementoj table, tr, td, th kaj body.
  • border che la elemento object.
  • cellpadding kaj cellspacing che la elemento table.
  • char kaj charoff che la elementoj col, colgroup, tbody, td, tfoot, th, thead kaj tr.
  • clear che la elemento br.
  • compact che la elementoj dl, menu, ol kaj ul.
  • frame che la elemento table.
  • frameborder che la elemento iframe.
  • height che la elementoj td kaj th.
  • hspace kaj vspace che la elementoj img kaj object.
  • marginheight kaj marginwidth che la elemento iframe.
  • noshade che la elemento hr.
  • nowrap che la elementoj td kaj th.
  • rules che la elemento table.
  • scrolling che la elemento iframe.
  • size che la elemento hr.
  • type che la elementoj li, ol kaj ul.
  • valign che la elementoj col, colgroup, tbody, td, tfoot, th, thead kaj tr.
  • width che la elementoj hr, table, td, th, col, colgroup kaj pre.

Malrekomendataj atributoj

Kelkaj atributoj plu restas en HTML5, sed oni tamen malrekomendas ilian uzon:

  • border che la elemento img: se oni uzas tiun atributon ghi devas havi la valoron 0 (sed prefere oni uzu stilfolion).
  • language che la elemento script: se oni uzas tiun atributon, chi devas havi la valoron JavaScript (kun ajna uskleco), kaj ghi ne rajtas konflikti kun la atributo type.
  • name che la elemento a: uzu antataue la atributon id.
  • summary che la elemento table.

Aliaj atributaj shanghoj

  • La atributo for che li-elementoj ne plu estas malrekomendata.
  • La atributo start che ol-elementoj ne plu estas malrekomendata.
  • La atributo target che la elementoj a kaj area ne plu estas malrekomendata.
  • La atributo type che la elemento script ne plu estas bezonata, se la uzata programolingvo estas ECMAScript (t.e. Javaskripto).
  • La atributo type che la elemento style ne plu estas bezonata, se la uzata stilfolia lingvo estas CSS.
  • La atributo border che la elemento table rajtas havi nur la valoron 1 au malplenan valoron.
  • La atributoj width kaj height che img kaj aliaj elementoj ne plu rajtas havi procentajhon kiel valoron, sed nur nombron (de bilderoj).

Al la sekva parto, “Novajhoj: data-atributoj”