Autor Zpráva
LEft*AVE
Profil *
Lze nějak pomocí css(nebo jiným způsobem) zajistit, aby se odkazy otevíraly pokaždé v novém okně. Tak abych nemusel u každého elementu <a> uvádět atribit terget="_blank" ?
tiso
Profil
Nie... Otváranie stránok do nového okna je somarina, je to proti prístupnosti...
mata
Profil
pokud nechceš používat target="_blank" kvůli validitě a zároveň potřebuješ otvírat do nového okna dá se na to použít např. javascript:

odkazům, které se mají otevírat do nového okna dáš rel="external"
<a href="odkaz.html" rel="external">já jsem odkaz do nového okna</a>

a použiješ např. takovýhle javascript


function externalLinks() {
if (!document.getElementsByTagName) return;
var anchors = document.getElementsByTagName("a");
for (var i=0; i<anchors.length; i++) {
var anchor = anchors[i];
if (anchor.getAttribute("href") &&
anchor.getAttribute("rel") == "external")
anchor.target = "_blank";
}
}

window.onload = externalLinks;


ten projde všechny odkazy a těm, které mají atribut rel=external přiřadí target=_blank
Otevírání oken do nového okna sice odporuje přístupnosti, ale někdy se to hodí - pak mi tohle připadá jako docela čisté řešení.
Chamurappi
Profil
Reaguji na matu:
Čisté řešení? Oblbovat validátor?
Tím, že přiřadíš skriptem target="_blank" až za běhu, vytváříš úplně stejně nevalidní dokument, jako kdybys ho tam napsal rovnou. Jediný rozdíl je v tom, že ti to za běhu nic nevaliduje a nic tě neupozorňuje na tuto „chybu“.

Řešením validity je použití Transitional DTD. Samo dělení na tři DTD je slepou uličkou vývoje, používání Strict DTD nemá smysl ani teď, ani do budoucna, jelikož na ni nic nenavazuje.
mata
Profil
Ano, virtuálního target="_blank", které tam je, ale validátor jej nevidí jsem si vědom. Různými (holy, podtržítkovými apod.) hacky oblbujeme prohlížeče, tak pro jednou snad nevadí, když olbneme a validátor. Uznávám že spojení "čisté řešení" nebylo vhodné ... dejme tomu "prosté řešení".
Radek Hrabůvka
Profil
Jestli jsem správně pochopil dotaz, jde o to použít target="_blank" (překlep jsem opravil), ale tak, aby tento atribut nemusel být pokaždé psán.
Poradím, ale:
1. otevírání odkazů do nového okna snižuje přístupnost
2. pak mám plno otevřených oken , nebo tabů, musím je pak zavírat, což je ztráta času
3. když chci, nové okno jde jednoduše otevřít, nesnáším, když mi někdo nové okno vnutí
4. otevírání nových oken atributem target tagu a nejde jednoduše zabránit

Teď víš, proč to nedělat, ale když to musíš mít, dej do sekce head:
<base target="_blank">
Pokud budeš chtít na takové stránce " normální" odkaz, dej mu třeba target="_top"

tiso zajímavé:
somár - osel
somarina - volovina
Toto téma je uzamčeno. Odpověď nelze zaslat.

0