ugrás a tartalomhoz

Miért nem engedik a böngészők CSS-sel változtatni a checkbox, select, Tallózás elemeket?

Atomi · 2021. Feb. 10. (Sze), 22.08
2021 van, modern honlapok készítésére van lehetőség CSS-sel, Flexbox-szal, html5-tel.
Amit nem értek (próbáltam utánajárni, az okának), hogy miért nem engedik a böngészők CSS-sel változtatni a checkbox, select, Tallózás, stb. alap elemeket?

Miért vagyunk arra kényszerítve, hogy mindenféle hack megoldást alkalmazzunk, ráadásul van amit nem is lehet rendesen, pl. a Tallózás gombot.

Magát a jelenséget nem értem. Ez valami beteges maradvány a böngészőháborúból, hogy mindenki ránk kényszerítse a saját ronda elemeit?
 
1

Valahogy úgy. Egyébként lehet

inf · 2021. Feb. 11. (Cs), 02.23
Valahogy úgy. Egyébként lehet mindegyiket, file inputnál le kell venni az opacity-t és fölé kell tenni egy képet, a checkbox-nál meg display none kell a checkboxra és a label-t lehet formázni. link Olyan 6 éve jelentettem, hogy nem működik ezeknél a billentyűzetes bejelölés, csak az egeres, és azóta sem történt semmi az ügy érdekében. Nagyjából ez a szint a böngészőknél. Már akkor utáltam, hogy minden böngészőben máshogy működik egy kód, vagy egyáltalán nem megy valami bug miatt, azóta messzire kerülöm a frontendet, ha csak lehet néhány hobbi projekttől eltekintve.
2

Engedik

Pepita · 2021. Feb. 11. (Cs), 10.18
miért nem engedik a böngészők CSS-sel változtatni a checkbox, select, Tallózás, stb. alap elemeket?
Miért ne engednék?
Egyedül a file input nehézkes egy kicsit, mert több részből áll, de szó sincs arról, hogy ne "engednék".
2021-ben - ha később nem is akarod felhasználni - próbaképpen húzz be a projektbe egy népszerű frontend keretet (pl Bootstrap, de más is lehet), csinálj vele egy teszt-formot, és nézd meg, milyen szelektorokkal milyen szabályokat használ. Sokat lehet belőle tanulni; ha utána nem is használod élesben, akkor is jócskán lehet tanulni a meglévő modern FE keretekből. Ezeket - a népszerűbbeket - sokan fejlesztik, így sok ember tudása benne van.
Aztán ha valamelyik megtetszik, az se baj, ha "bent hagyod" a projektben és használod, nekem legalábbis már nemigen van időm és türelmem arra, hogy 0-ról én írjam az összes css-t...
3

Drupal Zen témából indulok ki

Atomi · 2021. Feb. 11. (Cs), 20.26
Drupal Zen témából indulok ki mostanában, de csináltam már nulláról is, végeredményben a teljesen saját jobb, mert nem megy el idő azzal, hogy rájöjjek, mit hol csináltak egy meglévőben.
Csak hát a gányolás elkerülhetetlen, amit nem szeretek.

Ha engednék, az azt jelentené, hogy lenne rá CSS separator, ami kedvünk szerint engedné a változtatás, nem eltüntetni, meg átlátszóvá tenni az elemeket, stb.

A Bootstrap-ot is néztem, de az túl összetett, meg kéne az egészet érteni, túlságosan kötve vagyok akkor.
4

Én a 90-es évek vége óta

inf · 2021. Feb. 11. (Cs), 22.45
Én a 90-es évek vége óta nézegetem a HTML és JS kódokat, és azt kell, hogy mondjam, hogy ez nem fog változni. A kliens oldalon mindig lesz tákolás és mindig lesz, ami eltörik egyik vagy másik böngészőben. A keretrendszereket érdemes használni pont emiatt, mert akkor nem te szívsz vele, hanem a keretrendszer készítője. Én is szeretem a saját kódot, de nem túl produktív, ha neki állsz sajátot hegeszteni ahelyett, hogy olyat használnál, ahol már rászánták azt a fél-egy év tesztelést különböző böngészőkben. Ha hobbi projekt, vagy csak egy böngészőben kell, hogy menjen, akkor persze mindegy.
5

Én nem így látom.Szerintem

mind1 valami név · 2021. Feb. 13. (Szo), 12.24
Én nem így látom.
Szerintem elég tempósan haladunk afelé, hogy egységes legyen a böngésző.
Lassan nem marad más, mint a chrome... pardon, chromium alap.
A mozilla már egy éve dolgozik a firefox tempós tönkretételén, a MS már chromium a ... más most nem is nagyon jut eszembe ami elterjedt.
Opera/vivaldi még talán ott vannak, de helyenként a vivaldi kísértetiesen chrome-szerű... nem tudom, miért. (felhasználóként mondom)

ui: ja, meg a Safari ami talán kilóg mindebből.
6

Ja Firefox-nál ha megnézed a

inf · 2021. Feb. 13. (Szo), 16.52
Ja Firefox-nál ha megnézed a bug reportok egy része "Chrome compatibility". Úgyhogy már egy jó ideje a Chrome mondja meg, hogy mi legyen, ők csak követik. Valami antitrust vizsgálat lehet, hogy befigyel a végén, mint a Microsoft-nál, de nem igazán van fogás rajtuk, mert nem kényszerítenek senkit arra, hogy telepítsék a Chrome-ot, egyszerűen csak ez a legjobb a piacon az emberek többsége szerint.
7

Opera, meg a többi.

Arnold Layne · 2021. Feb. 13. (Szo), 16.59
Úgy tudom Opera is már régesrég dobta a sajátját (Presto talán) a webkitért. Talán a Safari, de úgy tudom az se nagyon lóg ki a sorból, mert ha jól tévedek nem túl messzi a közös őse a Safarinak és a Chrome-nak. Meg talán a KDE is érintett (volt) a dologban. De fixme. Szóval egy darabig még a Mozilla kilóg a sorból, meg a fejl...akarommondani változásban megállt forkjai, úgy mint Pale Moon, meg van valami mosómedvés is, de annak nem jut eszembe a neve. De ez utóbbiak erősen futottak még esetek.
9

Hogyan teszi tönkre a Mozilla

Endyl · 2021. Feb. 15. (H), 12.47
Hogyan teszi tönkre a Mozilla a Firefoxot? Csak mert számomra még mindig a leghasználhatóbb böngésző akár böngészésre, akár fejlesztésre.
13

Akkor te nem használod

mind1 valami név · 2021. Feb. 15. (H), 16.58
Akkor te nem használod Androidon...
Már az első váltás pár évvel ezelőtt is, finoman szólva katasztrofális romlást hozott a használhatóságban, ez az egészen új, amivel a bővítmények 90%-a ment a kukába... egyszerűen tragikus.
A közelmúltban kirúgták a fejlesztők nagy részét.
Sok jót ezek után nem várok tőlük.
14

De, androidon is a kedvencem.

Endyl · 2021. Feb. 15. (H), 22.17
De, androidon is a kedvencem.
8

Tákolás

Endyl · 2021. Feb. 15. (H), 12.43
Szerintem a frontend tákolásnak két fő forrása van.

Egyrészt ugyebár a frontend "NeM IGaZi PrOgRAmOzÁs". Főleg a HTML és a CSS, és elkezdtek mindent áttolni JS-be. Mert hát CSS-sel nem lehet problémákat megoldani, de akik ezt mondják azoknál a CSS kimerül abban, hogy:
  1. div div div div > span#my-h1 {  
  2.   colorred;  
  3.   z-index9999999999999999999 !important;  
  4.   font-size56px !important;  
  5. }  
Így mindenki Reacttal meg Vue-val kezd, aztán csodálkoznak, hogy nem értik, miért úgy működnek a dolgok ahogy.

A másik probléma meg az, hogy még mindig megpróbálják a webes megjelenítést megerőszakolni egy pixelpontos elrendezéssel bármilyen eszközön (mert nyomtatásban az milyen jól működik) ahelyett, hogy egyszerűen a használhatóságra mennének.
10

+1

Pepita · 2021. Feb. 15. (H), 13.23
A color: red; miért nem important?... :-D
12

Konzisztencia

Endyl · 2021. Feb. 15. (H), 14.49
Az túl konzisztens lenne.
15

Probléma

Arnold Layne · 2021. Feb. 16. (K), 11.50
A másik probléma meg az, hogy még mindig megpróbálják a webes megjelenítést megerőszakolni egy pixelpontos elrendezéssel bármilyen eszközön

A probléma inkább az, hogy van nekünk a HT*, ami tök jó dokumentumok megosztására a hálózaton, csak hát az igények túlnőtték. Nem elég már, hogy csak megjelenítjük böngészőben, hanem szerkesszük is böngészőben, közben videócseteljünk is mellette szintén böngészőben, satöbbi. Az a véleményem az egészről, hogy tököt kéne növeszteni és azt mondani hogy a HTML akkor maradjon csak meg dokumentumoknak, és mellé/fölé valami olyan alkalmazások írására alkalmas tech rakást odatenni, ami tényleg alkalmazások írására van kitalálva. Mert — továbbra is csak véleményem szerint — ezzel a HTML5-tel és a modern webnek csúfolt valamivel csak egy seggel próbálunk meg két lovat megülni. És valamiért tudomást sem akarunk venni arról, hogy így akár a két ló közé is be lehet esni. Szerintem.
16

Volt ilyen, java applet,

inf · 2021. Feb. 16. (K), 11.54
Volt ilyen, java applet, flash, silverlight, valahogy mind kidöglöttek és html5 lett helyette. Gondolom oka van.
17

Annyi légy nem tévedhet

Arnold Layne · 2021. Feb. 16. (K), 12.46
Java appletből nem sokkal találkoztam, a Flash és a Silverlight pedig tudtommal zárt volt. Egyetlen előnyét tudom elképzelni a HTML5-nek: az olcsó és gyorsan pótolható munkaerő. Gondolom hasonló okok miatt halt ki az XHTML is: nem tolerálta a gányolást. De javítsatok ki ha tévednék.
18

Korai APEH adóbevallás?

mind1 valami név · 2021. Feb. 16. (K), 13.38
Korai APEH adóbevallás? :)
Vagy az nem applet volt?

Azon túl csak egykori munkahelyem egyik csodaszoftverét tudnám emlegetni, de esetleg elpirul a háttérkép is :D
19

Korai APEH adóbevallás?

Arnold Layne · 2021. Feb. 16. (K), 14.30
Korai APEH adóbevallás? :)
Vagy az nem applet volt?

Nem tudom, akkoriban még nem kellett adóbevallással foglalkoznom.
21

A Flash azt hiszem többé

inf · 2021. Feb. 17. (Sze), 01.16
A Flash azt hiszem többé kevésbé gányolható volt, olyasmi, mint a js most. A java és a C# olyan nyelvek, amikhez azért nagyobb képzettség kell, mint ilyen script nyelvekhez, nem véletlen nem született sok applet és silverlight program sem. Az utóbbit nagyon szerették, akik értettek hozzá úgy hallottam. Én szerettem az XHTML-t, kimondottan jó volt, hogy XML parsolható, lehetett névtereket használni, akár RDF-et beilleszteni, kár érte, hogy nem folytatták.
20

Tudtommal a html továbbra is

Endyl · 2021. Feb. 16. (K), 16.21
Tudtommal a html továbbra is dokumentumstruktúra leírásra való, a megjelenésért felel a css, az alkalmazáslogika meg a js dolga. Ezek szépen fejlődnek is.

Most inkább úgy tűnik, hogy a tömegek megragadtak az IE korszakban és oda-vissza erőszakolják meg* a fenti három technológiát olyan dolgokkal, amik nem a feladatuk, és csodálkoznak, hogy nem, lassan, vagy rosszul működnek.

Plusz mindenkinek meg van ígérve, hogy 5 perc alatt fb klónt csinálhat, "jótékonyan" hallgatva a szükséges tudásról és az oda vezető útról. Emberi problémákat akarunk megoldani technológiai megoldásokkal*. Az embereket kéne segíteni a fejlődésben ahelyett, hogy hozzávágunk a dologhoz még "5 kiló technológiát", aztán furcsálljuk, hogy az emberek nem tudnak kiigazodni rajta.

* Gondolok itt a css-in-js vagy a <span class="button"></span> jellegű csodákra.
22

Hogy őszinte legyek én már a

inf · 2021. Feb. 17. (Sze), 01.23
Hogy őszinte legyek én már a CSS-nél elvesztettem a fonalat, hogy erre miért kell nekünk egy új nyelvet kitalálni, miért nem lehet JS-ből megoldani. Azóta sem igazán értem, maximum az lehet érv, hogy gyorsabban feldolgozható és ha valaki kikapcsolja a JS-t, akkor nem esik szét az oldal. Nekem ez nem elég érv mellette azóta sem, de másoknak biztos az volt.
23

Kulcsszó: "struktúra"

Pepita · 2021. Feb. 17. (Sze), 09.31
a html továbbra is dokumentumstruktúra leírásra való
Csak egyetérteni tudok.
Kicsit részletezve:
- HTML: mit akarok megjeleníteni
- CSS: hogyan jelenik meg, milyen színű, mekkora, legyen-e körülötte rózsaszín köd, stb
- JS: mi történjen akkor, amikor a user pl megnyom egy gombot.

Aztán sajnos azok miatt, akiknek meg lett ígérve,
hogy 5 perc alatt fb klónt csinálhat
, miattuk igen nagy az átfedés a két leíró- és a szkript-nyelv között. Gyakorlatilag mindegyik "rétegből" meg lehet változtatni a másikat - ebből aztán egyenesen következik sajnos, hogy
erre miért kell nekünk egy új nyelvet kitalálni

(Egyébként attól, hogy js-ből változtatsz html-t vagy css-t, ezek még mindig különálló leíró nyelvek maradnak.)

Nem akarlak meggyőzni, mert a technológiai szabványok feladata nem az, hogy egy-egy embert meggyőzzön, hanem az, hogy ha sok ember akar azonos technológiát használni, akkor ezt megtehessék, egyforma tudásszinttel egyforma minőséget tudjanak létrehozni.
25

A CSS-sel

Endyl · 2021. Feb. 17. (Sze), 13.02
A CSS-sel egyszerűbb/hatékonyabb leírni egy layoutot/megjelenést (mivel erre lett kitalálva), az újraszámolások sokkal gyorsabbak, mint bármi, amit JS-ből meg lehetne csinálni, stb.

Például nem véletlen, hogy megjelentek a CSS-animációk. A JS animációk teljesítménye olyan gyatra volt, hogy kellett egy jobb, gyorsabb megoldás: CSS. Vagy pl. a masonry layout.

Arról nem is beszélve, hogy a JS nem csak akkor nem működik, ha valaki direkt kikapcsolja. Reklám- vagy szkriptblokkolók, hibás vagy direkt szűrő proxyk, szakadozó/hullámzó kapcsolat mind okozhatják. Vagy akár egy nem 100%-ig bugmentes JS kód is futhat úgy hibára, hogy a layout engine leáll (vagy a layout engine hibája miatt áll le az alkalmazáslogika; egyik se túl szerencsés).

Mondjuk furcsa, hogy az IT más területein azért "harcolunk", hogy minden csak a saját feladatát oldja meg (SRP), vagy ne kelljen ugyanazt többször megcsinálni (DRY), de a JS-be csak azért is bele próbáljuk erőltetni a layout/megjelenítés számolását, újra meg újra megoldva azokat dolgokat kevésbé hatékonyan, amik CSS-ből már működnek, ráadásul nagyobb hibatoleranciával.
26

Mondjuk furcsa, hogy az IT

inf · 2021. Feb. 17. (Sze), 21.18
Mondjuk furcsa, hogy az IT más területein azért "harcolunk", hogy minden csak a saját feladatát oldja meg (SRP), vagy ne kelljen ugyanazt többször megcsinálni (DRY), de a JS-be csak azért is bele próbáljuk erőltetni a layout/megjelenítés számolását, újra meg újra megoldva azokat dolgokat kevésbé hatékonyan, amik CSS-ből már működnek, ráadásul nagyobb hibatoleranciával.


Az SRP teljesen más kontextusban értendő. A HTML és a CSS domain specific language-ek, a JS meg general purpose language. Ennyi erővel minden alkalmazáshoz tervezhetnénk külön nyelvet könyvtárak helyett, ha ez így működne. Szerintem csak arról van szó, hogy sokan nem voltak hajlandóak a HTML helyett valami újat megtanulni. Ami végülis oké, ha csak néhány dokumentumot akarunk a weben megjeleníteni, de ha alkalmazás fejlesztésről van szó, akkor gagyi a HTML.
27

Nyilván

Endyl · 2021. Feb. 18. (Cs), 09.53
Nyilván más az SRP kontextusa, de attól még általánosítható belőle az a megfigyelés, hogy hatékonyabb és könnyebben kezelhető lesz egy olyan komponens, aminek egy feladata van 100 helyett.

Ezen felül, ahogy Pepita mondta, attól még, hogy JS-ből piszkálják egyesek a CSS-t, attól az még CSS marad. Ha nem értik a CSS-t, akkor JS-en keresztül sem lesz egyszerűbb jó, hatékony CSS-t írni. Tehát végeredményben a szuboptimális CSS-üket még megfejelték némi szükségtelen JS feldolgozási és futtatási idővel, ami elég kontraproduktívnak tűnik.

Szerintem csak arról van szó, hogy sokan nem hajlandóak a JS helyett valami "újat" (khm, az alapokat) megtanulni :)
28

Ezen felül, ahogy Pepita

inf · 2021. Feb. 18. (Cs), 23.19
Ezen felül, ahogy Pepita mondta, attól még, hogy JS-ből piszkálják egyesek a CSS-t, attól az még CSS marad. Ha nem értik a CSS-t, akkor JS-en keresztül sem lesz egyszerűbb jó, hatékony CSS-t írni. Tehát végeredményben a szuboptimális CSS-üket még megfejelték némi szükségtelen JS feldolgozási és futtatási idővel, ami elég kontraproduktívnak tűnik.


Jó, de én egyáltalán nem erről beszéltem, hanem hogy amikor annak idején 20 éve behozták a CSS-t, akkor kellett volna egy kicsit átgondolni, és helyette JS-el megoldani. Biztos, hogy abban is elérhető ugyanez a sebesség, mint CSS-el, ha hajlandóak ráfordítani a fejlesztési időt. És akkor nem kellett volna tök feleslegesen még egy nyelvet megtanulni, vagy mondjuk azon agyalni, hogy ez a stílus, amit egy elem éppen kapott a CSS, HTML vagy a JS fájlban van megadva. Na mindegy ez a hajó már 20 éve elment, úgyhogy kár vitatkozni rajta.
29

Nem hozták be

Pepita · 2021. Feb. 19. (P), 09.57
amikor annak idején 20 éve behozták a CSS-t
Nem "hozták be", hanem kezdettől fogva a HTML "társa" bizonyos formában. Kezdetben nem volt látható forráskód szinten (még nem is "igazi" css volt), de a legelső böngészőkben is tudott a felhasználó betűméretet, stb, stílust állítani magának.
Emellett sok más asztali szoftverben is megszokott volt a '90-es évektől, hogy a megjelenésre vonatkozó adatokat (pl ablak, gombok mérete, felirata) külön tárolja a működéstől (pl windows alatt *.ini fájlok).
1996 decemberében a CSS level 1 ajánlata hivatalosan is megjelent.
Tehát majd' negyed százada van lehetősége "olvasható" nyelven, az attribútumoknál részletesebben beavatkoznia a szerzőnek a dokumentum kinézetébe.

Remélem feltűnt, hogy idáig csak dokumentum, kinézet, szerző és felhasználó szerepelt. Még semmi sem "működik", csak visszamentünk az alapokhoz.
És akkor az érdekesség:
A JavaScriptet először 1997–99 között szabványosította az ECMA „ECMAScript” néven.
Vagyis '96-ban esély sem volt beleerőszakolni, még ha akarták volna sem.
Megjegyzem: valószínűleg sokkal kevesebb és másmilyen webfejlesztők lennének ma, ha egykor meggondolatlanul "összegyúrták" volna a nem összeillő dolgokat.

ez a stílus, amit egy elem éppen kapott a CSS, HTML vagy a JS fájlban van megadva
Kb minden mai böngészőben vannak fejlesztői eszközök (Chrome, FF, Opera, Edge biztosan), amikkel 2-3 másodperc alatt láthatod, hogy minek és milyen megjelenítési hatása van az elemre. A hellyel együtt, ahol a css szabály definiálva van.
Az tud cumi lenni ebben, amikor pl js-ből kap további css class-t az elem, vagy netán inline style-t: böngészőben az látszik, hogy ott van, az nem, hogy "js-ből jött". Ezért sem szabad js-ből "design-olni".

Alapok: HTML, CSS, JS. Ebben a sorrendben. Valószínű Neked a CSS kimaradt, vagy nincs elég jó szinten, ezért szeretnéd js-ből megoldani. Mindig sokkal lassabb lesz úgy, mert újra kell építeni hozzá a DOM-ot (egy részét).
Csinálj szép weboldalt teljesen js nélkül, meg fogod látni, hogy valójában nem kell a megjelenéshez js.
30

Én úgy emlékszem, hogy annak

inf · 2021. Feb. 19. (P), 10.18
Én úgy emlékszem, hogy annak idején maga a külön style tag és a css fájl egyáltalán nem volt jelen, inkább csak attribútumokban adták meg a dolgokat, és nem hasznosították újra. Viszont most visszanéztem, és 2000-ben a weblabor.hu-nál már volt külön css fájl, igaz ha belenézünk a kódba, akkor vegyesen még benne volt a formázás:
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">  
  2. <!-- saved from url=(0052)http://weblabor.externet.hu/leiras/javascr/index.htm -->  
  3. <HTML><HEAD><TITLE>Weblabor - JavaScript</TITLE>  
  4. <META content="text/html; charset=iso-8859-1" http-equiv=Content-Type>  
  5. <META content="Weblabor (C) 1999 [http://weblabor.externet.hu/]" name=Copyright>  
  6. <META content="hungarian, hun, hu, magyar" name=Language>  
  7. <META content="Weblabor - JavaScript" name=Description>  
  8. <META content=all name=Robots>  
  9. <META content="20 days" name=Revisit-After>  
  10. <META   
  11. content="javascript, jscript, js, juray, Juray Tamas, Juray Tamás, ingyenes, ingyen, free, honlap, homepage, ottlap, internet, web, Internet, Web, WWW, webmester, webmaster, weblabor, webépítes, honlapszerkesztés, honlapépítés, honlaptervezés"   
  12. name=Keywords><LINK href="Weblabor - JavaScript_elemei/main.css" rel=STYLESHEET   
  13. type=text/css>  
  14. <SCRIPT language=JAVASCRIPT src="Weblabor - JavaScript_elemei/alldisp.js"   
  15. type=TEXT/JAVASCRIPT></SCRIPT>  
  16.   
  17. <SCRIPT language=JAVASCRIPT src="Weblabor - JavaScript_elemei/s_jstanf.js"   
  18. type=TEXT/JAVASCRIPT></SCRIPT>  
  19.   
  20. <META content="MSHTML 5.00.2919.6307" name=GENERATOR></HEAD>  
  21. <BODY bgColor=#ffffff>  
  22. <SCRIPT language=JAVASCRIPT type=TEXT/JAVASCRIPT>  
  23. <!-- hide JavaScript code from old browsers  
  24.     display_menu();  
  25. // -->  
  26. </SCRIPT>  
  27. <NOSCRIPT>  
  28. <DIV align=center>[JavaScript kód]<BR><BR></DIV></NOSCRIPT>  
  29. <TABLE bgColor=#000000 border=0 cellPadding=1 cellSpacing=0 width="100%">  
  30.   <TBODY>  
  31.   <TR>  
  32.     <TD>  
  33.       <TABLE border=0 cellPadding=0 cellSpacing=0 width="100%">  
  34.         <TBODY>  
  35.         <TR>  
  36.           <TD bgColor=#6699ff rowSpan=4 width=10><IMG alt="" height=1   
  37.             src="Weblabor - JavaScript_elemei/co_blank.gif" width=10></TD>  
  38.           <TD bgColor=#6699ff width=140><IMG alt="" height=1   
  39.             src="Weblabor - JavaScript_elemei/co_blank.gif" width=140></TD>  
  40.           <TD bgColor=#6699ff rowSpan=4 width=10><IMG alt="" height=1   
  41.             src="Weblabor - JavaScript_elemei/co_blank.gif" width=10></TD>  
  42.           <TD bgColor=#ffffff rowSpan=2 width=10><IMG alt="" height=1   
  43.             src="Weblabor - JavaScript_elemei/co_blank.gif" width=10></TD>  
  44.           <TD bgColor=#ffffff width="100%"><IMG alt="" height=1   
  45.             src="Weblabor - JavaScript_elemei/co_blank.gif" width=1></TD>  
  46.           <TD bgColor=#ffffff rowSpan=2 width=10><IMG alt="" height=1   
  47.             src="Weblabor - JavaScript_elemei/co_blank.gif" width=10></TD></TR>  
  48.         <TR vAlign=top>  
  49.           <TD bgColor=#6699ff class=sidel width=140>  
  50.             <SCRIPT language=JAVASCRIPT type=TEXT/JAVASCRIPT>  
  51. <!-- hide JavaScript code from old browsers  
  52.     display_sidebar();  
  53.     display_onead("usual|js|webtech");  
  54. // -->  
  55. </SCRIPT>  
  56.             <NOSCRIPT>[JavaScript kód]</NOSCRIPT></TD>  
  57.           <TD bgColor=#ffffff class=wtext width="100%">  
  58.             <DIV class=blackmenu>Leírások+Referenciák / JavaScript /   
  59.             Tartalomjegyzék</DIV><BR>  
  60.             <P>A következõ JavaScript leírás Juray Tamás munkája. Könnyen   
  61.             megtanulhatóak belõle a JavaScript alapjai, és a haladóbb technikák   
  62.             is. A haladást az oldalak alján található elõre és vissza utaló   
  63.             linkek és a jobboldaldi tartalom segíti. Ezeket a fejezeteket a   
  64.             szerzõ szívélyes beleegyezésével közöljük.<BR><BR>  
  65.             <TABLE align=center border=0 cellSpacing=0 CELLPAGGIND="0">  
  66.               <TBODY>  
  67.               <TR>  
  68.                 <TD class=wtextl>  
  69.                   <P>  
  70.                   <LI><A   
  71.                   href="http://weblabor.externet.hu/leiras/javascr/eloszo.htm">Elõszó</A><BR><BR>  
  72.                   <LI><A   
  73.                   href="http://weblabor.externet.hu/leiras/javascr/index01.htm">I.   
  74.                   Bevezetés</A>   
  75.                   <UL>  
  76.                     <LI><A   
  77.                     href="http://weblabor.externet.hu/leiras/javascr/index01.htm#javascript">Mi   
  78.                     a JavaScript?</A>   
  79.                     <LI><A   
  80.                     href="http://weblabor.externet.hu/leiras/javascr/index01.htm#nemjava">A   
  81.                     JavaScript nem Java!</A>   
  82.                     <LI><A   
  83.                     href="http://weblabor.externet.hu/leiras/javascr/index01.htm#futtatas">JavaScript   
  84.                     futtatása</A>   
  85.                     <LI><A   
  86.                     href="http://weblabor.externet.hu/leiras/javascr/index01.htm#beagyazas">JavaScript   
  87.                     beágyazása HTML dokumentumba</A>   
  88.                     <LI><A   
  89.                     href="http://weblabor.externet.hu/leiras/javascr/index01.htm#esemenyek">Események</A>   
  90.   
  91.                     <LI><A   
  92.                     href="http://weblabor.externet.hu/leiras/javascr/index01.htm#fuggvenyek">Függvények</A>   
  93.                     </LI></UL>  
  94.                   <LI><A   
  95.                   href="http://weblabor.externet.hu/leiras/javascr/index02.htm">II.   
  96.                   A HTML dokumentum</A>   
  97.                   <UL>  
  98.                     <LI><A   
  99.                     href="http://weblabor.externet.hu/leiras/javascr/index02.htm#felepitese">JavaScript   
  100.                     felépítése</A>   
  101.                     <LI><A   
  102.                     href="http://weblabor.externet.hu/leiras/javascr/index02.htm#location">A   
  103.                     location objektum</A> </LI></UL>  
  104.                   <LI><A   
  105.                   href="http://weblabor.externet.hu/leiras/javascr/index03.htm">III.   
  106.                   Keretek</A>   
  107.                   <UL>  
  108.                     <LI><A   
  109.                     href="http://weblabor.externet.hu/leiras/javascr/index03.htm#keret_HTML">Keretek   
  110.                     létrehozása HTML dokumentumban</A>   
  111.                     <LI><A   
  112.                     href="http://weblabor.externet.hu/leiras/javascr/index03.htm#keret_javascript">Keretek   
  113.                     kezelése JavaScript-ben</A> </LI></UL>  
  114.                   <LI><A   
  115.                   href="http://weblabor.externet.hu/leiras/javascr/index04.htm">IV.   
  116.                   Ablakok</A>   
  117.                   <UL>  
  118.                     <LI><A   
  119.                     href="http://weblabor.externet.hu/leiras/javascr/index04.htm#letrehozas">Ablakok   
  120.                     létrehozása</A>   
  121.                     <LI><A   
  122.                     href="http://weblabor.externet.hu/leiras/javascr/index04.htm#bezaras">Ablakok   
  123.                     bezárása</A>   
  124.                     <LI><A   
  125.                     href="http://weblabor.externet.hu/leiras/javascr/index04.htm#onthefly">Dokumentumok   
  126.                     készítése JavaScriptbõl</A> </LI></UL>  
  127.                   <LI><A   
  128.                   href="http://weblabor.externet.hu/leiras/javascr/index05.htm">V.   
  129.                   Az állapotsor</A>   
  130.                   <UL>  
  131.                     <LI><A   
  132.                     href="http://weblabor.externet.hu/leiras/javascr/index05.htm#timeouts">A   
  133.                     Timeout-ok (késleltetés)</A>   
  134.                     <LI><A   
  135.                     href="http://weblabor.externet.hu/leiras/javascr/index05.htm#scroll">Egyszerû   
  136.                     scroll JavaScriptben</A> </LI></UL>  
  137.                   <LI><A   
  138.                   href="http://weblabor.externet.hu/leiras/javascr/index06.htm">VI.   
  139.                   A JavaScript objektumai</A>   
  140.                   <UL>  
  141.                     <LI><A   
  142.                     href="http://weblabor.externet.hu/leiras/javascr/index06.htm#Array">Array   
  143.                     (tömb) objektum</A>   
  144.                     <LI><A   
  145.                     href="http://weblabor.externet.hu/leiras/javascr/index06.htm#Date">A   
  146.                     Date (dátum) objektum</A>   
  147.                     <LI><A   
  148.                     href="http://weblabor.externet.hu/leiras/javascr/index06.htm#matematika">A   
  149.                     Math (matematikai) objektum</A>   
  150.                     <LI><A   
  151.                     href="http://weblabor.externet.hu/leiras/javascr/index06.htm#String">String   
  152.                     objektum</A> </LI></UL>  
  153.                   <LI><A   
  154.                   href="http://weblabor.externet.hu/leiras/javascr/index07.htm">VII.   
  155.                   Az ûrlapok</A>   
  156.                   <UL>  
  157.                     <LI><A   
  158.                     href="http://weblabor.externet.hu/leiras/javascr/index07.htm#ures">Üres   
  159.                     mezõ ellenõrzése</A>   
  160.                     <LI><A   
  161.                     href="http://weblabor.externet.hu/leiras/javascr/index07.htm#Email">E-mail   
  162.                     cím ellenõrzése</A>   
  163.                     <LI><A   
  164.                     href="http://weblabor.externet.hu/leiras/javascr/index07.htm#Numerikus">Numerikus   
  165.                     értékek ellenõrzése</A>   
  166.                     <LI><A   
  167.                     href="http://weblabor.externet.hu/leiras/javascr/index07.htm#Fokusz">Fókusz   
  168.                     állítása ûrlapmezõkre</A>   
  169.                     <LI><A   
  170.                     href="http://weblabor.externet.hu/leiras/javascr/index07.htm#kuldes">Ûrlapok   
  171.                     elküldése levélben</A> </LI></UL>  
  172.                   <LI><A   
  173.                   href="http://weblabor.externet.hu/leiras/javascr/index08.htm">VIII.   
  174.                   A képek kezelése</A>   
  175.                   <UL>  
  176.                     <LI><A   
  177.                     href="http://weblabor.externet.hu/leiras/javascr/index08.htm#ujkepek">Új   
  178.                     képek betöltése</A>   
  179.                     <LI><A   
  180.                     href="http://weblabor.externet.hu/leiras/javascr/index08.htm#betoltes">Képek   
  181.                     elõre történõ betöltése</A>   
  182.                     <LI><A   
  183.                     href="http://weblabor.externet.hu/leiras/javascr/index08.htm#esemeny">Felhasználói   
  184.                     események által kiváltott képcserék</A> </LI></UL>  
  185.                   <LI><A   
  186.                   href="http://weblabor.externet.hu/leiras/javascr/index09.htm">IX.   
  187.                   Layerek 1.</A>   
  188.                   <UL>  
  189.                     <LI><A   
  190.                     href="http://weblabor.externet.hu/leiras/javascr/index09.htm#letrehoz">Layerek   
  191.                     létrehozása</A>   
  192.                     <LI><A   
  193.                     href="http://weblabor.externet.hu/leiras/javascr/index09.htm#JSLAYER">A   
  194.                     JavaScript és a layer-ek kapcsolata</A>   
  195.                     <LI><A   
  196.                     href="http://weblabor.externet.hu/leiras/javascr/index09.htm#mozgo">Mozgó   
  197.                     rétegek</A> </LI></UL>  
  198.                   <LI><A   
  199.                   href="http://weblabor.externet.hu/leiras/javascr/index10.htm">X.   
  200.                   Layerek 2.</A>   
  201.                   <UL>  
  202.                     <LI><A   
  203.                     href="http://weblabor.externet.hu/leiras/javascr/index10.htm#vag">Vágás</A>   
  204.   
  205.                     <LI><A   
  206.                     href="http://weblabor.externet.hu/leiras/javascr/index10.htm#nested">Egymásba   
  207.                     ágyazott layerek</A> </LI></UL>  
  208.                   <LI><A   
  209.                   href="http://weblabor.externet.hu/leiras/javascr/index11.htm">XI.   
  210.                   Cookiek (sütik)</A>   
  211.                   <UL>  
  212.                     <LI><A   
  213.                     href="http://weblabor.externet.hu/leiras/javascr/index11.htm#szorit">Megszorítások</A>   
  214.   
  215.                     <LI><A   
  216.                     href="http://weblabor.externet.hu/leiras/javascr/index11.htm#JSCOOKIE">A   
  217.                     "sütik" és a JavaScript</A>   
  218.                     <LI><A   
  219.                     href="http://weblabor.externet.hu/leiras/javascr/index11.htm#pelda">Példa   
  220.                     a "süti" használatára</A> </LI></UL>  
  221.                   <LI><A   
  222.                   href="http://weblabor.externet.hu/leiras/javascr/befejez.htm">Befejezés</A></LI></TD></TR></TBODY></TABLE>  
  223.             <TABLE border=0 cellPadding=0 cellSpacing=0 width="100%">  
  224.               <TBODY>  
  225.               <TR>  
  226.                 <TD class=wtextr>  
  227.                   <P><A   
  228.                   href="http://weblabor.externet.hu/leiras/javascr/index01.htm">Tovább   
  229.                   az elsõ fejezethez   
  230.         &gt;&gt;</A></P></TD></TR></TBODY></TABLE></P></TD></TR>  
  231.         <TR>  
  232.           <TD bgColor=#6699ff class=sidebar vAlign=bottom width=140>  
  233.             <DIV align=center><A href="mailto:tjuray##kukac##bigfoot.com"><IMG border=0   
  234.             src="Weblabor - JavaScript_elemei/juray.gif" vspace=2></A><BR><IMG   
  235.             src="Weblabor - JavaScript_elemei/allow.gif"><BR><BR><A   
  236.             href="http://weblabor.externet.hu/info/copyrig.htm">Copyright   
  237.             Weblabor<BR>© 1999-2000 All Rights Reserved</A></DIV></TD>  
  238.           <TD bgColor=#ffffff class=blackmenu colSpan=3>  
  239.             <SCRIPT language=JAVASCRIPT type=TEXT/JAVASCRIPT>  
  240. <!-- hide JavaScript code from old browsers  
  241.     display_banners(100);  
  242. // -->  
  243. </SCRIPT>  
  244.             <NOSCRIPT>  
  245.             <DIV align=center>[JavaScript   
  246.       kód]</DIV></NOSCRIPT></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></BODY></HTML>  
31

Na visszanéztem, mégiscsak

inf · 2021. Feb. 19. (P), 10.28
Na visszanéztem, mégiscsak nekem van igazam, akkor már jó ideje volt JS, amikor megjelent a CSS. Abban igazad van, hogy nem volt még szabványosítva. link

Ilyesmi kódok voltak 2000 előtt, némi JS-el megtűzve tipikusan ellenőriztek, hogy IE vagy NS böngészőben fut e a kód, néha kiírták, hogy csak IE-re van optimalizálva az oldal meg ilyesmik. Olyat nem találtam most, amiben már JS is van, de még CSS nincsen. Inkább csak ilyen menü szín változtatások voltak mikor ráhúztad az egeret meg tényleg alap dolgok. Azért logikusan jött volna, hogyha amúgy is valamennyire a kinézetért és az animációkért a JS felel, akkor azzal csinálják meg a megjelenítést.
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">  
  2. <HTML>  
  3.  <HEAD>  
  4.   <TITLE>Apache Server Frequently Asked Questions</TITLE>  
  5.  </HEAD>  
  6. <!-- Background white, links blue (unvisited), navy (visited), red (active) -->  
  7.  <BODY  
  8.   BGCOLOR="#FFFFFF"  
  9.   TEXT="#000000"  
  10.   LINK="#0000FF"  
  11.   VLINK="#000080"  
  12.   ALINK="#FF0000"  
  13.  >  
  14.   <DIV ALIGN="CENTER">  
  15.  <IMG SRC="../images/sub.gif" ALT="[APACHE DOCUMENTATION]">  
  16.  <H3>  
  17.   Apache HTTP Server Version 1.3  
  18.  </H3>  
  19. </DIV>  
  20.   
  21.   <H1 ALIGN="CENTER">Apache Server Frequently Asked Questions</H1>  
  22.   <P>  
  23.   $Revision: 1.129 $ ($Date: 1998/09/17 14:14:52 $)  
  24.   </P>  
  25.   <P>  
  26.   The latest version of this FAQ is always available from the main  
  27.   Apache web site, at  
  28.   &lt;<A  
  29.        HREF="http://www.apache.org/docs/misc/FAQ.html"  
  30.        REL="Help"  
  31.       ><SAMP>http://www.apache.org/docs/misc/FAQ.html</SAMP></A>&gt;.  
  32.   </P>  
  33. <!-- Notes about changes:                                           -->  
  34. <!--  - If adding a relative link to another part of the            -->  
  35. <!--    documentation, *do* include the ".html" portion.  There's a -->  
  36. <!--    good chance that the user will be reading the documentation -->  
  37. <!--    on his own system, which may not be configured for          -->  
  38. <!--    multiviews.                                                 -->  
  39. <!--  - When adding items, make sure they're put in the right place -->  
  40. <!--    - verify that the numbering matches up.                     -->  
  41. <!--  - *Don't* use <PRE></PRE> blocks - they don't appear          -->  
  42. <!--    correctly in a reliable way when this is converted to text  -->  
  43. <!--    with Lynx.  Use <DL><DD><CODE>xxx<BR>xx</CODE></DD></DL>    -->  
  44. <!--    blocks inside a <P></P> instead.  This is necessary to get  -->  
  45. <!--    the horizontal and vertical indenting right.                -->  
  46. <!--  - Don't forget to include an HR tag after the last /P tag     -->  
  47. <!--    but before the /LI in an item.                              -->  
  48.   <P>  
  49.   If you are reading a text-only version of this FAQ, you may find numbers  
  50.   enclosed in brackets (such as &quot;[12]&quot;).  These refer to the list of  
  51.   reference URLs to be found at the end of the document.  These references  
  52.   do not appear, and are not needed, for the hypertext version.  
  53.   </P>  
  54.   <H2>The Questions</H2>  
  55. <!-- Stuff to Add:                                                  -->  
  56. <!-- - can't bind to port 80                                        -->  
  57. <!--   - permission denied                                          -->  
  58. <!--   - address already in use                                     -->  
  59. <!-- - mod_auth & passwd lines "user:pw:.*" - ++1st colon onward is -->  
  60. <!--   treated as pw, not just ++1st to --2nd.                      -->  
  61. <!-- - SSL:                                                         -->  
  62. <!--   - Can I use Apache-SSL for free in Canada?                   -->  
  63. <!--   - Why can't I use Apache-SSL in the U.S.?                    -->  
  64. <!-- - How can I found out how many visitors my site gets?          -->  
  65. <!-- - How do I add a counter?                                      -->  
  66. <!-- - How do I configure Apache as a proxy?                        -->  
  67. <!-- - What browsers support HTTP/1.1?                              -->  
  68. <!-- - What's the point of vhosts-by-name is there aren't any       -->  
  69. <!--   HTTP/1.1 browsers?                                           -->  
  70. <!-- - Is there an Apache for W95/WNT?                              -->  
  71. <!-- - Why does Apache die when a vhost can't be DNS-resolved?      -->  
  72. <!-- - Why do I get "send lost connection" messages in my error     -->  
  73. <!--   log?                                                         -->  
  74. <!--   - specifically consider .pdf files which seem to cause this  -->  
  75. <!--     a lot when accessed via the plugin ... and also mention    -->  
  76. <!--     how range-requests can cause bytes served < file size      -->  
  77. <!-- - Why do directory indexes appear as garbage?  (A: -lucb)      -->  
  78. <!-- - How do I add a footer to all pages offered by my server?     -->  
  79. <!-- - Fix midi question; a bigger problem than midi vs. x-midi is  -->  
  80. <!--   the simple fact that older versions of Apache (and new ones  -->  
  81. <!--   that have been upgraded without upgrading the mime.types     -->  
  82. <!--   file) don't have the type listed at all.                     -->  
  83. <!-- - RewriteRule /~fraggle/* /cgi-bin/fraggle.pl does not work    -->  
  84. <!-- - how do I disable authentication for a subdirectory?          -->  
  85. <!--   (A: you can't but "satisfy any; allow from all" can be close -->  
  86. <!-- - '400 malformed request' on Win32 might mean stale proxy; see -->  
  87. <!--   PR #2300.                                                    -->  
  88. <UL>  
  89.  <LI><STRONG>Background</STRONG>  
  90.   <OL START=1>  
  91.    <LI><A HREF="#what">What is Apache?</A>  
  92.    </LI>  
  93.    <LI><A HREF="#why">Why was Apache created?</A>  
  94.    </LI>  
  95.    <LI><A HREF="#relate">How does The Apache Group's work relate to  
  96.     other servers?</A>  
  97.    </LI>  
  98.    <LI><A HREF="#name">Why the name &quot;Apache&quot;?</A>  
  99.    </LI>  
  100.    <LI><A HREF="#compare">OK, so how does Apache compare to other servers?</A>  
  101.    </LI>  
  102.    <LI><A HREF="#tested">How thoroughly tested is Apache?</A>  
  103.    </LI>  
  104.    <LI><A HREF="#future">What are the future plans for Apache?</A>  
  105.    </LI>  
  106.    <LI><A HREF="#support">Whom do I contact for support?</A>  
  107.    </LI>  
  108.    <LI><A HREF="#more">Is there any more information on Apache?</A>  
  109.    </LI>  
  110.    <LI><A HREF="#where">Where can I get Apache?</A>  
  111.    </LI>  
  112.   </OL>  
  113.  </LI>  
  114.  <LI><STRONG>Technical Questions</STRONG>  
  115.   <OL START=11>  
  116.    <LI><A HREF="#what2do">&quot;Why can't I ...?  Why won't ...  
  117.         work?&quot;  What to do in case of problems</A>  
  118.    </LI>  
  119.    <LI><A HREF="#compatible">How compatible is Apache with my existing  
  120.         NCSA 1.3 setup?</A>  
  121.    </LI>  
  122.    <LI><A HREF="#CGIoutsideScriptAlias">How do I enable CGI execution  
  123.         in directories other than the ScriptAlias?</A>  
  124.    </LI>  
  125.    <LI><A HREF="#premature-script-headers">What does it mean when my  
  126.         CGIs fail with &quot;<SAMP>Premature end of script  
  127.         headers</SAMP>&quot;?</A>  
  128.    </LI>  
  129.    <LI><A HREF="#ssi-part-i">How do I enable SSI (parsed HTML)?</A>  
  130.    </LI>  
  131.    <LI><A HREF="#ssi-part-ii">Why don't my parsed files get cached?</A>  
  132.    </LI>  
  133.    <LI><A HREF="#ssi-part-iii">How can I have my script output parsed?</A>  
  134.    </LI>  
  135.    <LI><A HREF="#ssi-part-iv">SSIs don't work for VirtualHosts and/or   
  136.         user home directories</A>  
  137.    </LI>  
  138.    <LI><A HREF="#proxy">Does or will Apache act as a Proxy server?</A>  
  139.    </LI>  
  140.    <LI><A HREF="#multiviews">What are &quot;multiviews&quot;?</A>  
  141.    </LI>  
  142.    <LI><A HREF="#fdlim">Why can't I run more than &lt;<EM>n</EM>&gt;  
  143.         virtual hosts?</A>  
  144.    </LI>  
  145.    <LI><A HREF="#freebsd-setsize">Can I increase <SAMP>FD_SETSIZE</SAMP>  
  146.         on FreeBSD?</A>  
  147.    </LI>  
  148.    <LI><A HREF="#POSTnotallowed">Why do I keep getting &quot;Method Not   
  149.         Allowed&quot; for form POST requests?</A>  
  150.    </LI>  
  151.    <LI><A HREF="#passwdauth">Can I use my <SAMP>/etc/passwd</SAMP> file  
  152.         for Web page authentication?</A>  
  153.    </LI>  
  154.    <LI><A HREF="#errordoc401">Why doesn't my <CODE>ErrorDocument  
  155.         401</CODE> work?</A>  
  156.    </LI>  
  157.    <LI><A HREF="#errordocssi">How can I use <CODE>ErrorDocument</CODE>  
  158.         and SSI to simplify customized error messages?</A>  
  159.    </LI>  
  160.    <LI><A HREF="#setgid">Why do I get &quot;<SAMP>setgid: Invalid  
  161.         argument</SAMP>&quot; at startup?</A>  
  162.    </LI>  
  163.    <LI><A HREF="#cookies1">Why does Apache send a cookie on every response?</A>  
  164.    </LI>  
  165.    <LI><A HREF="#cookies2">Why don't my cookies work, I even compiled in  
  166.         <SAMP>mod_cookies</SAMP>?</A>  
  167.    </LI>  
  168.    <LI><A HREF="#jdk1-and-http1.1">Why do my Java app[let]s give me plain text  
  169.         when I request an URL from an Apache server?</A>  
  170.    </LI>  
  171.    <LI><A HREF="#putsupport">Why can't I publish to my Apache server  
  172.         using PUT on Netscape Gold and other programs?</A>  
  173.    </LI>  
  174.    <LI><A HREF="#fastcgi">Why isn't FastCGI included with Apache any  
  175.         more?</A>  
  176.    </LI>  
  177.    <LI><A HREF="#nodelay">Why am I getting &quot;<SAMP>httpd: could not  
  178.         set socket option TCP_NODELAY</SAMP>&quot; in my error log?</A>  
  179.    </LI>  
  180.    <LI><A HREF="#peerreset">Why am I getting &quot;<SAMP>connection  
  181.         reset by peer</SAMP>&quot; in my error log?</A>  
  182.    </LI>  
  183.    <LI><A HREF="#nph-scripts">How can I get my script's output without  
  184.         Apache buffering it?  Why doesn't my server push work?</A>  
  185.    </LI>  
  186.    <LI><A HREF="#linuxiovec">Why do I get complaints about redefinition  
  187.         of &quot;<CODE>struct iovec</CODE>&quot; when compiling under Linux?</A>  
  188.    </LI>  
  189.    <LI><A HREF="#wheres-the-dump">The errorlog says Apache dumped core,  
  190.         but where's the dump file?</A>  
  191.    </LI>  
  192.    <LI><A HREF="#dnsauth">Why isn't restricting access by host or domain name  
  193.         working correctly?</A>  
  194.    </LI>  
  195.    <LI><A HREF="#SSL-i">Why doesn't Apache include SSL?</A>  
  196.    </LI>  
  197.    <LI><A HREF="#HPUX-core">Why do I get core dumps under HPUX using  
  198.         HP's ANSI C compiler?</A>  
  199.    </LI>  
  200.    <LI><A HREF="#midi">How do I get Apache to send a MIDI file so the  
  201.         browser can play it?</A>  
  202.    </LI>  
  203.    <LI><A HREF="#cantbuild">Why won't Apache compile with my  
  204.         system's <SAMP>cc</SAMP>?</A>  
  205.    </LI>  
  206.    <LI><A HREF="#addlog">How do I add browsers and referrers to my logs?</A>  
  207.    </LI>  
  208.    <LI><A HREF="#bind8.1">Why do I get an error about an undefined  
  209.         reference to &quot;<SAMP>__inet_ntoa</SAMP>&quot; or other  
  210.         <SAMP>__inet_*</SAMP> symbols?</A>  
  211.    </LI>  
  212.    <LI><A HREF="#set-servername">Why does accessing directories only work  
  213.         when I include the trailing &quot;/&quot;  
  214.         (<EM>e.g.</EM>,&nbsp;<SAMP>http://foo.domain.com/~user/</SAMP>) but  
  215.         not when I omit it  
  216.         (<EM>e.g.</EM>,&nbsp;<SAMP>http://foo.domain.com/~user</SAMP>)?</A>  
  217.    </LI>  
  218.    <LI><A HREF="#user-authentication">How do I set up Apache to require  
  219.         a username and password to access certain documents?</A>  
  220.    </LI>  
  221.    <LI><A HREF="#remote-user-var">Why is the environment variable  
  222.         <SAMP>REMOTE_USER</SAMP> not set?</A>  
  223.    </LI>  
  224.    <LI><A HREF="#remote-auth-only">How do I set up Apache to allow access  
  225.         to certain documents only if a site is either a local site  
  226.         <EM>or</EM> the user supplies a password and username?</A>  
  227.    </LI>  
  228.    <LI><A HREF="#no-info-directives">Why doesn't mod_info list any  
  229.         directives?</A>  
  230.    </LI>  
  231.    <LI><A HREF="#linux-shmget">When I run it under Linux I get &quot;shmget:  
  232.         function not found&quot;, what should I do?</A>  
  233.    </LI>  
  234.    <LI><A HREF="#authauthoritative">Why does my authentication give  
  235.         me a server error?</A>  
  236.    </LI>  
  237.    <LI><A HREF="#auth-on-same-machine">Do I have to keep the (mSQL)  
  238.         authentication information on the same machine?</A>  
  239.    </LI>  
  240.    <LI><A HREF="#msql-slow">Why is my mSQL authentication terribly slow?</A>  
  241.    </LI>  
  242.    <LI><A HREF="#rewrite-more-config">Where can I find mod_rewrite rulesets  
  243.         which already solve particular URL-related problems?</A>  
  244.    </LI>  
  245.    <LI><A HREF="#rewrite-article">Where can I find any published information  
  246.         about URL-manipulations and mod_rewrite?</A>  
  247.    </LI>  
  248.    <LI><A HREF="#rewrite-complexity">Why is mod_rewrite so difficult to learn  
  249.         and seems so complicated?</A>  
  250.    </LI>  
  251.    <LI><A HREF="#rewrite-dontwork">What can I do if my RewriteRules don't work  
  252.         as expected?</A>  
  253.    </LI>  
  254.    <LI><A HREF="#rewrite-prefixdocroot">Why don't some of my URLs get  
  255.         prefixed with DocumentRoot when using mod_rewrite?</A>  
  256.    </LI>  
  257.    <LI><A HREF="#rewrite-nocase">How can I make all my URLs case-insensitive  
  258.         with mod_rewrite?</A>  
  259.    </LI>  
  260.    <LI><A HREF="#rewrite-virthost">Why are RewriteRules in my VirtualHost  
  261.         parts ignored?</A>  
  262.    </LI>  
  263.    <LI><A HREF="#rewrite-envwhitespace">How can I use strings with whitespaces  
  264.         in RewriteRule's ENV flag?</A>  
  265.    </LI>  
  266.    <LI><A HREF="#cgi-spec">Where can I find the &quot;CGI  
  267.         specification&quot;?</A>  
  268.    </LI>  
  269.    <LI><A HREF="#year2000">Is Apache Year 2000 compliant?</A>  
  270.    </LI>  
  271.    <LI><A HREF="#namevhost">I upgraded to Apache 1.3 and now my  
  272.         virtual hosts don't work!</A>  
  273.    </LI>  
  274.    <LI><A HREF="#redhat">I'm using RedHat Linux and I have problems with httpd  
  275.         dying randomly or not restarting properly</A>  
  276.    </LI>  
  277.    <LI><A HREF="#stopping">I upgraded from an Apache version earlier  
  278.         than 1.2.0 and suddenly I have problems with Apache dying randomly  
  279.         or not restarting properly</A>  
  280.    </LI>  
  281.    <LI><A HREF="#redhat-htm">I'm using RedHat Linux and my .htm files are  
  282.         showing up as HTML source rather than being formatted!</A>  
  283.    </LI>  
  284.    <LI><A HREF="#glibc-crypt">I'm using RedHat Linux 5.0, or some other  
  285.         <SAMP>glibc</SAMP>-based Linux system, and I get errors with the  
  286.         <CODE>crypt</CODE> function when I attempt to build Apache 1.2.</A>  
  287.    </LI>  
  288.    <LI><A HREF="#nfslocking">Server hangs, or fails to start, and/or error log  
  289.         fills with &quot;<SAMP>fcntl: F_SETLKW: No record locks  
  290.         available</SAMP>&quot; or similar messages</A>  
  291.    </LI>  
  292.    <LI><A HREF="#zoom">What's the best hardware/operating system/... How do  
  293.         I get the most out of my Apache Web server?</A>  
  294.    </LI>  
  295.    <LI><A HREF="#regex">What are "regular expressions"?</A>  
  296.    </LI>  
  297.    <LI><A HREF="#broken-gcc">I'm using gcc and I get some compilation errors,   
  298.     what is wrong?</A>  
  299.    </LI>  
  300.    <LI><A HREF="#htaccess-work">My <CODE>.htaccess</CODE> files are being  
  301.     ignored.</A>  
  302.    </LI>  
  303.    <LI><A HREF="#submit_patch">How do I submit a patch to the Apache Group?</A>  
  304.    </LI>  
  305.   </OL>  
  306.  </LI>  
  307. </UL>  
  308.   
  309. <HR>  
  310.   
  311.   <H2>The Answers</H2>  
  312.   <H3>  
  313.    Background  
  314.   </H3>  
  315. <OL START=1>  
  316.  <LI><A NAME="what">  
  317.       <STRONG>What is Apache?</STRONG>  
  318.      </A>  
  319.   <P>  
  320.   Apache was originally based on code and ideas found in the most  
  321.   popular HTTP server of the time.. NCSA httpd 1.3 (early 1995). It has  
  322.   since evolved into a far superior system which can rival (and probably  
  323.   surpass) almost any other UNIX based HTTP server in terms of functionality,  
  324.   efficiency and speed.  
  325.   </P>  
  326.   <P>  
  327.   Since it began, it has been completely rewritten, and includes many new  
  328.   features. Apache is, as of January 1997, the most popular WWW server on  
  329.   the Internet, according to the  
  330.   <A HREF="http://www.netcraft.com/Survey/">Netcraft Survey</A>.  
  331.   </P>  
  332.   <HR>  
  333.  </LI>  
  334.   
  335.  <LI><A NAME="why">  
  336.       <STRONG>Why was Apache created?</STRONG>  
  337.      </A>  
  338.   <P>  
  339.   To address the concerns of a group of WWW providers and part-time httpd  
  340.   programmers that httpd didn't behave as they wanted it to behave.  
  341.   Apache is an entirely volunteer effort, completely funded by its  
  342.   members, not by commercial sales.  
  343.   </P>  
  344.   <HR>  
  345.  </LI>  
  346.   
  347.  <LI><A NAME="relate">  
  348.       <STRONG>How does The Apache Group's work relate to other  
  349.       server efforts, such as NCSA's?</STRONG>  
  350.      </A>  
  351.   <P>  
  352.   We, of course, owe a great debt to NCSA and their programmers for  
  353.   making the server Apache was based on. We now, however, have our own  
  354.   server, and our project is mostly our own. The Apache Project is an  
  355.   entirely independent venture.  
  356.   </P>  
  357.   <HR>  
  358.  </LI>  
  359.   
  360.  <LI><A NAME="name">  
  361.       <STRONG>Why the name &quot;Apache&quot;?</STRONG>  
  362.       </A>  
  363.   <P>  
  364.   A cute name which stuck. Apache is &quot;<STRONG>A  
  365.   PA</STRONG>t<STRONG>CH</STRONG>y server&quot;.  It was  
  366.   based on some existing code and a series of &quot;patch files&quot;.  
  367.   </P>  
  368.   <HR>  
  369.  </LI>  
  370.   
  371.  <LI><A NAME="compare">  
  372.       <STRONG>OK, so how does Apache compare to other servers?</STRONG>  
  373.      </A>  
  374.   <P>  
  375.   For an independent assessment, see  
  376.   <A HREF="http://webcompare.internet.com/chart.html">Web Compare</A>'s  
  377.   comparison chart.  
  378.   </P>  
  379.   <P>  
  380.   Apache has been shown to be substantially faster than many other  
  381.   free servers. Although certain commercial servers have claimed to  
  382.   surpass Apache's speed (it has not been demonstrated that any of these  
  383.   &quot;benchmarks&quot; are a good way of measuring WWW server speed at any  
  384.   rate), we feel that it is better to have a mostly-fast free server  
  385.   than an extremely-fast server that costs thousands of dollars. Apache  
  386.   is run on sites that get millions of hits per day, and they have  
  387.   experienced no performance difficulties.  
  388.   </P>  
  389.   <HR>  
  390.  </LI>  
  391.   
  392.  <LI><A NAME="tested">  
  393.       <STRONG>How thoroughly tested is Apache?</STRONG>  
  394.      </A>  
  395.   <P>  
  396.   Apache is run on over 1.2 million Internet servers (as of July 1998). It has  
  397.   been tested thoroughly by both developers and users. The Apache Group  
  398.   maintains rigorous standards before releasing new versions of their  
  399.   server, and our server runs without a hitch on over one half of all  
  400.   WWW servers available on the Internet.  When bugs do show up, we  
  401.   release patches and new versions as soon as they are available.  
  402.   </P>  
  403.   <P>  
  404.   The Apache project's web site includes a page with a partial list of  
  405.   <A HREF="http://www.apache.org/info/apache_users.html">sites running  
  406.   Apache</A>.  
  407.   </P>  
  408.   <HR>  
  409.  </LI>  
  410.   
  411.  <LI><A NAME="future">  
  412.       <STRONG>What are the future plans for Apache?</STRONG>  
  413.      </A>  
  414.   <P>  
  415.   <UL>  
  416.    <LI>to continue to be an "open source" no-charge-for-use HTTP server,  
  417.    </LI>  
  418.    <LI>to keep up with advances in HTTP protocol and web developments in  
  419.     general,  
  420.    </LI>  
  421.    <LI>to collect suggestions for fixes/improvements from its users,  
  422.    </LI>  
  423.    <LI>to respond to needs of large volume providers as well as  
  424.     occasional users.  
  425.    </LI>  
  426.   </UL>  
  427.   <P></P>  
  428.   <HR>  
  429.  </LI>  
  430.   
  431.  <LI><A NAME="support">  
  432.       <STRONG>Whom do I contact for support?</STRONG>  
  433.      </A>  
  434.   <P>  
  435.   There is no official support for Apache. None of the developers want to  
  436.   be swamped by a flood of trivial questions that can be resolved elsewhere.  
  437.   Bug reports and suggestions should be sent <EM>via</EM>  
  438.   <A HREF="http://www.apache.org/bug_report.html">the bug report page</A>.  
  439.   Other questions should be directed to the  
  440.   <A HREF="news:comp.infosystems.www.servers.unix"  
  441.   >comp.infosystems.www.servers.unix</A> or <A HREF=  
  442.   "news:comp.infosystems.www.servers.ms-windows"  
  443.   >comp.infosystems.www.servers.ms-windows</A>  
  444.   newsgroup (as appropriate for the platform you use), where some of the   
  445.   Apache team lurk, in the company of many other httpd gurus who   
  446.   should be able to help.  
  447.   </P>  
  448.   <P>  
  449.   Commercial support for Apache is, however, available from a number  
  450.   of third parties.  
  451.   </P>  
  452.   <HR>  
  453.  </LI>  
  454.   
  455.  <LI><A NAME="more">  
  456.       <STRONG>Is there any more information available on  
  457.       Apache?</STRONG>  
  458.      </A>  
  459.   <P>  
  460.   Indeed there is.  See the main  
  461.   <A HREF="http://www.apache.org/">Apache web site</A>.  
  462.   There is also a regular electronic publication called  
  463.   <A HREF="http://www.apacheweek.com/" REL="Help"><CITE>Apache Week</CITE></A>  
  464.   available.  Links to relevant <CITE>Apache Week</CITE> articles are  
  465.   included below where appropriate. There are also some   
  466.   <A HREF="http://www.apache.org/info/apache_books.html"  
  467.   >Apache-specific books</A> available.  
  468.   </P>  
  469.   <HR>  
  470.  </LI>  
  471.   
  472.  <LI><A NAME="where">  
  473.       <STRONG>Where can I get Apache?</STRONG>  
  474.      </A>  
  475.   <P>  
  476.   You can find out how to download the source for Apache at the  
  477.   project's  
  478.   <A HREF="http://www.apache.org/">main web page</A>.  
  479.   </P>  
  480.   <HR>  
  481.  </LI>  
  482. </OL>  
  483.   <H3>Technical Questions</H3>  
  484.     
  485.   ..............  
  486.   
  487. <H3 ALIGN="CENTER">  
  488.  Apache HTTP Server Version 1.3  
  489. </H3>  
  490.   
  491. <A HREF="./"><IMG SRC="../images/index.gif" ALT="Index"></A>  
  492. <A HREF="../"><IMG SRC="../images/home.gif" ALT="Home"></A>  
  493.   
  494. </BODY>  
  495. </HTML>  
Nem tudom miért gondolod, hogy nekem kimaradt volna, vagy nincs elég jó szinten a CSS. Jó mondjuk a flexbox és az újabb dolgok tényleg kimaradtak, mert egy ideje nem érdekel annyira a kliens oldal, de azért egy 10-15 évig követtem a fejlődését.
37

Bocsi, de

Pepita · 2021. Feb. 23. (K), 14.17
akár hányezer sornyi innen-onnan, de böngészővel lementett HTML kódot mutatsz (ne felejtsük el, hogy az nem pontosan a forrása), még nem lesz igaztalan, amit a wikipediáról idéztem. ;)

valamennyire a kinézetért és az animációkért a JS felel
Ez még mindig tévedés. Bár ma már nem divat arra készülni, hogy kikapcsolja a user a js-t, de talán erről az oldalról a legkönnyebb megérteni.

Mi történik akkor, amikor js-el "animálsz"?
1. betöltődik a html
2. betöltődnek (jó esetben aszinkron) a hozzá tartozó css és js fájlok, valamint képek, egyéb statikus tartalmak.
3. a böngésző rendereli az oldalt (kvázi "lefordítja" a html-t + css-t + megjeleníti a képeket) - ez egy szál
4. elindul a js animációd (új szál, ráadásul interpreteres nyelv)
5. Hopp, megváltozott a DOM, SOS renderelni kell! - veszi észre az első szál.
6. újrarenderel (első)
7. közben tovább futott a második is, és jön a következő módosítás (pl csak inline style-ban egy width értéket változtatunk adott sebességgel)
8. Úristen már megint! - mondja az első szál
És ez így megy, mondjuk 3 sec alatt 60-szor, mire sikerült "leanimálni", hogy a user valami fölé vitte az egeret...

Mi van, ha css-el animálod ugyanezt?
A 3. pont annyiban változik, hogy a zárójeles rész kicsit kibővül. A css "fordítása" közben - mivel hover volt az esemény - már "ráakasztja" a célzott elemekre az eseménykezelőt (core szinten, nem egy interpreteres nyelven), plusz előre kiszámolja az animációhoz szükséges matekot.
Amikor "jön a hover", már semmit nem kell matekolni (pláne nem neked js-ből), és gyönyörűen megjeleníti amit kell, nem "akad" és nincs se "hopp", se "Úristen".

Nos ezért a css-ben a helye a megjelenítésnek.

Jó mondjuk a flexbox és az újabb dolgok tényleg kimaradtak
Nos pont a fenti (egyébként korántsem teljes) összehasonlítás miatt érdemes szinten tartani.
39

akár hányezer sornyi

inf · 2021. Feb. 23. (K), 18.34
akár hányezer sornyi innen-onnan, de böngészővel lementett HTML kódot mutatsz (ne felejtsük el, hogy az nem pontosan a forrása)

Nyilván a szerver oldali kód nincs benne, de annak idején 2000-ben ezt adta vissza az oldal.

valamennyire a kinézetért és az animációkért a JS felel

Ez nagyon jó példája, hogy miért nem érdemes kiragadni a kontextusból mondatokat és átértelmezni. Az IE és Netscape időkben 25 éve a JS-t használták arra, amire most a CSS-t, pl :hover helyett onmouseover-el oldották meg. Annyit kellett volna tenni, hogy betesznek egy style API-t, amit JS kóddal megváltoztathatunk az oldal betöltődése közben, és ugyanazt csinálja, mint a CSS. Az újra renderelés problémája ezzel meg lenne oldva. Plusz nem lenne az, ami most van, hogy a CSS-be megpróbálnak minél több okosságot beletákolni.
32

Ha a CSS a JS része lenne, és

Endyl · 2021. Feb. 19. (P), 11.18
Ha a CSS a JS része lenne, és ugyanazt a hatékonyságot akarnánk elérni, ugyanúgy meg kéne érteni a CSS-re jellemző koncepciókat (lépcsőzetesség, öröklődés, elsőbbségi szabályok, doboz modell, stb). Ugyanígy ma is lehet teljes stíluslapokat gyártani JS-ből, megvan hozzá az API, de ha nem tanulod meg, hogy hogyan működik a mögöttes layout engine (ami gondolom már a CSS bárminemű megejelése előtt is ott volt, már az első grafikus megjelenítésnél, és a CSS csak egy API-t biztosít a befolyásolására), ugyanolyan nehéz lesz gyors, hozzáférhető, hatékony megjelenést csinálni.

Továbbá ha a CSS a JS része lenne, akkor cserébe azt keresgélhetnéd, hogy melyik JS fájlban van megadva a megjelenés :) Így legalább tudod, hogy CSS fájlban kell keresgélni. Persze lehetnek kivételek, amikor a teljesítmény nevében inline-olni kell néhány szabályt, vagy valami nagyon egzotikus megjelenéshez JS-ből kell hozzányúlni a megjelenéshez, de az esetek túlnyomó többségében nagyon is könnyen kideríthető, hogy honnan jön a stílusszabály.
33

Nem ez a lényeg, hanem hogy

inf · 2021. Feb. 19. (P), 11.43
Nem ez a lényeg, hanem hogy teljesen feleslegesen létrehoztak egy új nyelvet, amikor volt már egy létező, ami előtte kötődött valamennyire a megjelenítéshez. Simán kellett volna egy style API-t csinálni JS-ben, aztán ugyanazt lekódolni hozzá ahelyett, hogy egy külön nyelvet csinálnak. Szerintem. Úgy cirka egy évtizeddel vetette vissza mindez a JS fejlődését, jöttek a jquery és társai, aztán annak hatására végül mégis megcsinálták a query selector-t. Mondjuk amit Pepita ír az nem annyira hülyeség olyan szempontból, hogy talán akkor még nem volt egyértelmű, hogy a JS egyáltalán túl fog e élni, vagy Java applet lesz az alkalmazásokhoz és HTML némi formázással a dokumentumokhoz.
34

Továbbra sem értem, hogy

Endyl · 2021. Feb. 19. (P), 15.02
Továbbra sem értem, hogy miért baj, hogy egy jól behatárolt feladatra létrehoztak egy céleszközt.

Kicsit olyan érzésem van ettől, mintha azon vitáznánk, hogy pl. az assembly után miért volt szükség más nyelvre, amikor az már ott volt és kötődött a géppel való kommunikációhoz.
35

Én feleslegesnek éreztem,

inf · 2021. Feb. 19. (P), 15.15
Én feleslegesnek éreztem, ennyi. Lehet más a véleményed.
38

+1

Pepita · 2021. Feb. 23. (K), 14.23
pl. az assembly után miért volt szükség más nyelvre
Ez a mondat nagyon ott van! :)
Pedig előtte is ott volt a gépi kód!
(És bibibííí, nekem még van egy kis halvány emlékem Commodore-16 Assembly-ről, utána a .386 valós mód is már a kánaán volt! :-D )
40

Ha már visszatértünk ehhez

inf · 2021. Feb. 23. (K), 20.15
Ha már visszatértünk ehhez is. Az assembly-nél magasabb szintű nyelveket hoztak létre, az assemblyt pedig meghagyták a maga szintjén.

A CSS ezzel szemben a JS-hez képest nem nyújt semmi extrát, sőt visszalépés hozzá képest. Persze elhiszem, hogy egyszerűbb volt gyorsan tákolni rá egy DSL-t, mint elgondolkodni, hogy esetleg fejleszthetnék a meglévő eszközöket.

Mondjuk itt van ez, ami gondolom a CSS 1.0-val is működik.
  1. body {  
  2.     font-familyTahoma, Geneva, sans-serif;  
  3.     font-size0.9em;  
  4.     line-height1.45em;  
  5. }  
Meg lehetett volna oldani akár így is már akkor szinte azonos renderelési sebességgel:
  1. var text = new style.Text();  
  2. text.font = fonts.Tahoma || fonts.Geneva || fonts.SansSerif;  
  3. text.unit = style.units.em;  
  4. text.size = 0.9;  
  5. text.line.size = text.size + 0.55;  
  6. text.color = colors.black;  
  7.   
  8. var box = new style.Box();  
  9. box.background = colors.white;  
  10.   
  11. if (browser.settings.shortSighted){  
  12.     text.size = 2;  
  13.     text.line.size = text.size + 0.55;  
  14. }  
  15.   
  16. if (browser.time.isNight) {  
  17.     text.color = colors.white;  
  18.     box.background = colors.black;  
  19. }  
  20.   
  21. document.setStyle("body", box, text);  
Nyilván hosszabb, mint a CSS, de megvan az az előnye, hogy programozható. 25 éve ugyanezt full esélytelen volt megoldani csak CSS-el, JS-el meg pillanatok alatt össze lehetett volna szórni tök egyszerűen. Ahogy nézem CSS3-ra lettek függvények és változók, úgyhogy talán már lehetne valami ilyesmit, de még most sem hiszem, hogy tisztán CSS-el kliens időből megoldható a nappal és éjszaka megállapítása, azt az infot, hogy valakinek jó lenne nagyítani a betű méreten meg továbbra sem adja át a böngésző. Fantasztikus fejlődés...

Engem ez az egész sokkal inkább arra emlékeztet, hogy létrehoznak n+1 sablonnyelvet szerver oldalon, aztán a 10.0 verzióra, amikor már 1000 featuret és függvényt hozzáadtak, mindig rájönnek, hogy mégiscsak ugyanazt kéne tudnia, mint az eredeti nyelvnek, amin létrehozták.
41

Én nem tartom visszalépésnek

Endyl · 2021. Feb. 23. (K), 21.44
Én nem tartom visszalépésnek a sokszorosan gyorsabb és simább megjelenést és tömörebb, deklaratív szintaxist. Azt sem látom előnynek, hogy sokmegás szkriptek parszolására és futtatására kelljen várni ahhoz, hogy megjelenjen az oldal.

Egy jól megírt CSS-sel plusz sorok/logika nélkül támogatod a változtatható betűméretet reszponzív módon. A felhasználó ezt be tudja állítani magának a böngészőben, és nem azt kell használnia, amit te JS-ben megadsz.

Ha időtől függően azt akarod, hogy máshogy nézzen ki, akkor hozzáadsz egy osztályt a html elemhez és kész. A logika marad a JS-ben, a dokumentumtól függő megjelenés meg a CSS-ben.

Én továbbra is csak előnyöket látok.
42

Nyilván nem fogok fél óra

inf · 2021. Feb. 24. (Sze), 10.57
Nyilván nem fogok fél óra alatt összeszórni neked egy W3C szabványt, ami a CSS minden előnyével rendelkezik. Viszont ha ennyire nem tudsz elvonatkoztatni a mostani állapotoktól, akkor nincs értelme ezt a szálat folytatni.

Én nem tartom visszalépésnek a sokszorosan gyorsabb és simább megjelenést és tömörebb, deklaratív szintaxist. Azt sem látom előnynek, hogy sokmegás szkriptek parszolására és futtatására kelljen várni ahhoz, hogy megjelenjen az oldal.

Senki nem kötelez rá, hogy mindent egybe csomagolj. A stílust tartalmazó JS fájloknál ugyanúgy lehetne jelezni a böngészőnek egy link rel-el, vagy egy attribútummal, hogy dolgozza fel mielőtt áttér a maradékra, mert kell a rendereléshez, esetleg betehetünk defert a maradékra. Ha konfig fájl jellegű szintaxist akarsz, akkor meg JSON-ban vagy ahhoz hasonló formátumban meg lehetett volna adni, aminek a feldolgozása a CSS-el azonos sebességgel megoldható.

Egy jól megírt CSS-sel plusz sorok/logika nélkül támogatod a változtatható betűméretet reszponzív módon. A felhasználó ezt be tudja állítani magának a böngészőben, és nem azt kell használnia, amit te JS-ben megadsz.

Ezzel el is veszik egyúttal a lehetőséget azoktól, akik bármilyen okból nem akarnak reszponzív oldalt csinálni csak mondjuk támogatni egy alap és egy nagybetűs kinézetet valami vállalható formában. A reszponzívval kapcsolatban valószínűleg sokkal jobban megoldható lehet egy normális programnyelven, ahhoz képest, ami most CSS-ben van, de nem vagyok benne biztos.

Ha időtől függően azt akarod, hogy máshogy nézzen ki, akkor hozzáadsz egy osztályt a html elemhez és kész. A logika marad a JS-ben, a dokumentumtól függő megjelenés meg a CSS-ben.

Ja hát igen, pont erről beszéltem, hogyha már minimális logikát akarsz belevinni a kinézetbe, akkor nyúlhatsz a JS-hez, aztán kommunikálhatod tovább a CSS felé amennyire ez lehetséges a DOM betöltése előtt. Eleve a CSS bizonyította, hogy a JS DOM megléte egyáltalán nem szükséges a stílus változtatásához, elég ha megadunk egy szabályt, hogy ami megfelel egy query-nek, arra a következő stílus vonatkozik, aztán majd a renderelő alkalmazza a szabályt, ha illik valamire a query, amit éppen ki akar rajzolni. A DOM csak arra kell, hogy bejárhassuk a HTML csomópontok fáját, és hozzáadjunk vagy elvegyünk valamit. Jelenleg ha kommunikálni akarunk a JS és CSS között mielőtt a teljes DOM-ot betöltené a böngésző, akkor kénytelenek vagyunk egy félkész DOM-ot módosítani hozzá ahelyett, hogy csak hozzáadnánk egy szabályt.
  1. // ezek mennek  
  2. document.documentElement.setAttribute("class""night");  
  3. document.styleSheets[0].insertRule("body {background-color: black; color: white}", 1);  
  4. // ez már elhasal, mert még nincs body  
  5. document.getElementsByTagName("body")[0].setAttribute("class""night");  
Sokkal egyszerűbb és következetesebb lenne, ha egyáltalán nem engednénk hozzáférést a DOM fához ameddig nincs teljesen felépítve, és csak szabályokat fogalmaznánk meg rá.
  1. document.style.addRule("body", {  
  2.     backgroundColor: "black",  
  3.     color: "white"  
  4. });  
Ugyanezt akár lehetne így is:
  1. document.querySelector("body").addRule("style", {  
  2.     backgroundColor: "black",  
  3.     color: "white"  
  4. });  
Ilyen téren akár tovább is lehet menni, és eseménykezelőket is hozzá lehetne csapni, amit később minden csomópontra alkalmaz a JS, amire teljesül a query.
  1. document.querySelector("body").addRule("event:load"function (event){  
  2.     event.target.setAttribute("class""night");  
  3. });  
43

Sokkal egyszerűbb és

Endyl · 2021. Feb. 24. (Sze), 12.30
Sokkal egyszerűbb és következetesebb lenne, ha egyáltalán nem engednénk hozzáférést a DOM fához ameddig nincs teljesen felépítve, és csak szabályokat fogalmaznánk meg rá.

Pont ez a gond. A JS-nek az a dolga, hogy módosítsa a dokumentumot. Így ha betöltés közben talál a böngésző egy normál script elemet, akkor a megjelenítést meg kell állítania, (adott esetben) letöltenie a kódot, értelmeznie és futtatnia, és utána tudja tovább építeni a dokumentumot. És ezt a viselkedést nem lehet csak úgy eldobni, mert sok régi oldal lehet, hogy nem működne ezek után. Tehát hiába akarunk elvonatkoztatni a jelenlegi (és az akkori helyzettől), csak bizonyos keretek között lehet ezt megtenni úgy, hogy a meglévő infrastruktúra is működőképes maradjon.

Nem kétlem, hogy lehet olyan (kitchen sink) nyelvet írni nulláról, ami mindent is meg tud csinálni optimálisan, de a komplexitása könnyen lehet, hogy akkora lenne, hogy az egyes feladatokra optimalizált API-jai annyira más gondolkodást és szintaxist igényelnének, hogy praktikusak legyenek, hogy akár külön nyelvek is lehetnének. Főleg ha elkezded "külön csomagolni" ezeket a részeket a hatékonyság kedvéért.

Ezzel el is veszik egyúttal a lehetőséget azoktól, akik bármilyen okból nem akarnak reszponzív oldalt csinálni csak mondjuk támogatni egy alap és egy nagybetűs kinézetet valami vállalható formában. A reszponzívval kapcsolatban valószínűleg sokkal jobban megoldható lehet egy normális programnyelven, ahhoz képest, ami most CSS-ben van, de nem vagyok benne biztos.

A HTML alapból reszponzív. Ha megtanul az ember CSS-ül, akkor nem kerül plusz erőfeszítésbe reszponzív módon megírni egy oldal megjelenését ahhoz képest, mint ami egy nem reszponzív oldalhoz kell. Szóval ezzel azt mondod, hogy elveszik azt a lehetőséget az embertől, hogy olyanra csinálja meg az oldalát, amit kevesebb eszközzel vagy kevesebb különböző adottságokkal rendelkező ember tudja használni. De ugyebár ez a lehetősége nincs elvéve. Kedvedre csinálhatsz olyan gyatra reszponzivitású és hozzáférhetőségű oldalt, amilyet csak szeretnél (ld. ma létező weboldalak). Milyen jók is voltak az "ez az oldal csak az IE6-ot támogatja 1024×768 felbontásban" idők :)

Nyilván nem fogok fél óra alatt összeszórni neked egy W3C szabványt, ami a CSS minden előnyével rendelkezik.

Nyilván. És senki más sem. Ehhez idő kell. De közben azt is szeretnénk, hogy fejlődjön a web. Ezért a problémát partícionálni kell, hogy a logikusan összetartozó dolgokat praktikusan lehessen megoldani. És ebből a folyamatból született meg a CSS. Volt egy adott helyzet, amiben különböző problémákra megoldásokat kellett találni jobbára visszafelé kompatibilis módon.
44

Pont ez a gond. A JS-nek az a

inf · 2021. Feb. 24. (Sze), 14.34
Pont ez a gond. A JS-nek az a dolga, hogy módosítsa a dokumentumot.


Ja és ezt ki döntötte el és mikor? Mert simán hozzá lehetett volna csapni a stíluslapokat is JS-hez mielőtt valakinek jött az a világmegváltó ötlete a W3C-nél, hogy kitalál rá egy harmadik nyelvet.

Meg lehetne csinálni ma is visszafele kompatibilisen, viszont kapásból jönne az, hogy nincs semmi értelme, mert működnek CSS-el is az alap dolgok, a maradékhoz meg hozzátákolunk egy kis JS-t, aztán kész. A CSS kivezetése meg szintén baromi megterhelő lenne mindenkinek. Ezt akkor cseszték el javíthatatlanul, amikor fel se tették a kérdést, hogy milyen létező eszközöket lehetne erre a célra használni.
45

Ja és ezt ki döntötte el és

Endyl · 2021. Feb. 24. (Sze), 16.31
Ja és ezt ki döntötte el és mikor? Mert simán hozzá lehetett volna csapni a stíluslapokat is JS-hez mielőtt valakinek jött az a világmegváltó ötlete a W3C-nél, hogy kitalál rá egy harmadik nyelvet.


Eleve azért hozták létre a JS-t, hogy letöltődés után meg lehessen változtatni a dokumentumokat, és ne csak statikus oldalak legyenek. Szóval ezt még a Mosaic/Netscape-nél döntötték el.

De igazad van, azzal nem tudok mit kezdeni, hogy neked antipatikus valamiért a CSS. Mindez annak ellenére, hogy belátható, hogy a hatékony layout kezelést nem szerencsés összekeverni dokumentum módosításokkal, hogy érdemes külön kezelni a megjelenésért felelős kódot az egyéb logikától, stb.

A korábbi kódrészletekből azt gondolom, hogy ismered a CSSOM-ot. Ezt használva bárki, aki rendesen ért a CSS-hez, talán csinálhatna egy nem túl borzasztó JS alapú stílus APIt. De egyrészt aki kellően magabiztos CSS tudással rendelkezik, az valószínűleg nem fog egy nyakatekertebb megoldást használni, másrészt meg ugye ennek a hatékony használatához továbbra is érteni kéne, hogy a böngészők hogyan végzik a megjelenítést, ami független attól, hogy milyen nyelven van az APIja.

Ahogy már az elején is írtam, szerintem nem a nyelvvel van a baj, hanem hogy az emberek csak felszínesen hajlandóak megérteni egy weboldal renderelésének a folyamatát és mechanizmusait. Úgy meg nehéz lesz bármilyen nyelven jó megjelenést írni. Ha JS-ben menne a stílusolás, akkor szerintem a JS stílus APIval kapcsolatban menne az, ami most a CSS-re irányul, és lenne ugyanennyi elfuserált, lebutított wrapper körülötte ahelyett, hogy rávennék az embereket, hogy megtanulják használni. Ehhez a megértéshez meg hozzátartozna a másik nagy probléma, hogy egy weboldal megjelenésének mikéntjét nem tudjuk befolyásolni úgy, mint egy nyomtatott kiadványnál. Tehát aki szembemegy a reszponzivitással, az számítson a masszív szenvedésre, ami emiatt vár rá.
46

Pontatlanul fogalmaztam, úgy

inf · 2021. Feb. 24. (Sze), 19.41
Pontatlanul fogalmaztam, úgy értettem, hogy ki döntötte el, hogy csak erre lehet használni. A lényegen mondjuk már nem változtat. A maradékkal egyetértek, hogy rendesen meg kell tanulni a már létező eszközöket, ha már csak az jutott.
24

modern web

Pepita · 2021. Feb. 17. (Sze), 09.53
a HTML5-tel és a modern webnek csúfolt valamivel csak egy seggel próbálunk meg két lovat megülni
Megülni meg lehet vele akár 100 lovat is, a lényeg, hogy ezt kellően tudjuk szétválasztani, ne mind a 100 legyen egy oldalon.

Egyébként a "modern webnek" lassan el kell(ene) indulnia egy, a mostanihoz képest nagyon más irányba. Elértük órajelben, RAM-ban, háttértárban és hálózatban nagyjából a maximum sebességet, "darabszámot" még tudunk növelni, cluster-t építeni, de minek?
Minél nagyobb sávszélességet tudok adni pl mobilon, annál olcsóbban kell adnom az egységnyi adatot, közben nekem, a szolgáltatónak egyre drágább a több eszköz és nagyobb üzemeltetési költség miatt.
Kinek jó ez? Senkinek. A kliens(ek) számára sem, mert ugyan nagyobb adatforgalmat kap ugyanannyiért, de semmivel se több hasznos tartalmat, és még a teló is hamarabb lemerül...
Emellett nincs igazán helye további "technológiáknak", amik még több sávszélt + procit + memóriát igényelnek, csak azért, hogy a "fejlesztők" gyorsabban, kevesebb munkával tudjanak haszontalan tartalmat gyártani...

Az irány inkább az lesz, hogy hogyan tudjuk az energiafogyasztást csökkenteni, értékes tartalom mellett. (Nem, attól nem fogják jobban megvenni a gumilabdát, hogy a pontos leírás helyett egy autostart fullhd videón van egy labdázó kisgyerek.)

Ha már annyira technológia: üzemeltetési oldalon van pár (viszonylag) újdonság a sebesség növelésére, adatforgalom csökkentésére.
11

Hajrá

Pepita · 2021. Feb. 15. (H), 13.28
A Bootstrap-ot is néztem, de az túl összetett, meg kéne az egészet érteni
Meg kéne bizony.
Igen, összetett. Annyiból kötöttséget is jelent, hogy kénytelen leszel azt az "építési struktúrát" követni, amire ki van találva.
Összességében ezek nem rossz dolgok, sőt, sokat lehet tanulni is belőle.
Más is írta: nem mellékesen produktívabb is, mint 0-ról egyedül.
(Egyébként a Drupal Zen téma nem hsználja véletlenül? :) )
36

A Zen Zent használ.

Atomi · 2021. Feb. 21. (V), 17.49
A Zen Zent használ.
47

Ontopic

Endyl · 2021. Feb. 25. (Cs), 12.58
A checkbox és radio elemek elég jól stílusolhatóak a :checked pszeudo-osztály segítségével.

A select szintén tűrhetően alakítható, ha csak az elemet nézzük. A legördülő rész macerás tud lenni, és OS függő.

A file elemhez meg létezik a ::file-selector-button / ::-webkit-file-upload-button pszeudo-elem. Esetleg akár egy labelbe csomagolva és elrejtve lényegében tetszőleges megjelenést tudsz neki adni.

Bizonyos esetekben érdemes lehet megpróbálni egy appearance: none; szabályt.