Archívum - Jan 2, 2010
CSS öröklési hiba
Sziasztok!
Eddig úgy éreztem, hogy a css öröklési alapjait tudom, de most elbizonytalanodtam. Itt egy "félig" teszt oldal:
CSS Teszt
Probléma no. 1.: a "Felhaszn. név" és "jelszó" fontmérete. Ezt honnan veszi és miért? ( a css-ben szándékosan elcseszett pici fontméret van )
Probléma no. 2.: IE-ben miért nincs középen a div?
Illetve egy általános kérdés: hogyan is megy a css-ben az öröklés ( törölheti valami az öröklést? ), illetve ha egy adott elemen van "style" attribútum is és "class" is, akkor az hogyan kerül összeféslülésre?ű
Előre is köszi,
Tom
■ Eddig úgy éreztem, hogy a css öröklési alapjait tudom, de most elbizonytalanodtam. Itt egy "félig" teszt oldal:
CSS Teszt
Probléma no. 1.: a "Felhaszn. név" és "jelszó" fontmérete. Ezt honnan veszi és miért? ( a css-ben szándékosan elcseszett pici fontméret van )
Probléma no. 2.: IE-ben miért nincs középen a div?
Illetve egy általános kérdés: hogyan is megy a css-ben az öröklés ( törölheti valami az öröklést? ), illetve ha egy adott elemen van "style" attribútum is és "class" is, akkor az hogyan kerül összeféslülésre?ű
Előre is köszi,
Tom
AJAX Collection
Hasznos jQuery és MooTools szkriptek kategóriák szerinti gyűjteménye
■ GIMP 2.7 for Linux has a single windowed mode
SVN trönkben az egyablakos üzemmódot támogató GIMP
■ CSS div függőleges kitöltés
Üdv!
Erősen ismerkedőben a CSS-el, egy olyan problémába ütköztem, amit jónéhány napi guglizás után sem sikerült megoldanom.
Van egy egyszerű honlap struktúra:A header és a footer 50px. Hogyan lehet megcsinálni azt, hogy a content div kitöltse a böngészőben a rendelkezésére álló függőleges teret úgy, hogy a footer a böngésző aljához illeszkedjen? A content tartalma esetenként csak néhány szó, ezért az nem mindig tudja biztosítani, hogy a honlap alja elérje a böngésző alját (különösen nagyobb felbontások esetén).
Néhány leírás alapján én ezzel próbálkoztam:Sajnos ez sem igazán megfelelő, mert ekkor viszont már megjelenik a görgetősáv, és a footert csak legörgetve lehet elérni.
■ Erősen ismerkedőben a CSS-el, egy olyan problémába ütköztem, amit jónéhány napi guglizás után sem sikerült megoldanom.
Van egy egyszerű honlap struktúra:
<div id="header">valami</div>
<div id="content">valami</div>
<div id="footer">valami</div>
Néhány leírás alapján én ezzel próbálkoztam:
html {
height: 100%;
}
body {
height: 100%;
margin: 0px;
padding: 0px;
}
#header {
width: 850px;
height: 50px;
margin: auto;
}
#content {
width: 850px;
min-height: 100%;
margin: auto;
}
#footer {
width: 850px;
height: 50px;
margin: auto;
}
Javascript szülő osztály hívásának továbbörökítése
Üdv.
Van egy kis gondom, amire nem találtam semmilyen megoldást.
A lényeg, hogy származtatni szeretnék osztályokat egymásból, és a szülő osztály függvényeit elérni. A gondom az, hogy a szülő osztályból hívott függvényben a this.parent nem a nagyszülőre, hanem a szülőre vonatkozik, és így végtelen ciklusba kerül. Ez persze logikus, viszont kíváncsi vagyok létezik e megoldás ennek kikerülésére.
Itt egy példa:
■ Van egy kis gondom, amire nem találtam semmilyen megoldást.
A lényeg, hogy származtatni szeretnék osztályokat egymásból, és a szülő osztály függvényeit elérni. A gondom az, hogy a szülő osztályból hívott függvényben a this.parent nem a nagyszülőre, hanem a szülőre vonatkozik, és így végtelen ciklusba kerül. Ez persze logikus, viszont kíváncsi vagyok létezik e megoldás ennek kikerülésére.
Itt egy példa:
Object.prototype.extend=function (source)
{
if (source)
{
for (var property in source)
{
if
(
(property in Object.prototype)
?
source[property]!==Object.prototype[property]
&&
this[property]===Object.prototype[property]
:
!(property in this)
)
{
this[property]=source[property];
}
}
}
return this;
};
Object.prototype.implement=function (source)
{
if (source)
{
for (var property in source)
{
if
(
!(property in Object.prototype)
||
source[property]!==Object.prototype[property]
)
{
this[property]=source[property];
}
}
}
return this;
};
Class=function (source)
{
return function ()
{
if (this.initialize instanceof Function)
{
this.initialize.apply(this,arguments);
}
}.implement(source);
};
Function.prototype.extend(
{
extend: function (source)
{
this.prototype.extend(source.prototype);
this.prototype.parent=source.prototype;
return this;
},
implement: function (source)
{
this.prototype.implement(source);
return this;
}
});
var a=new Class(
{
initialize: function ()
{
this.a=1;
}
});
var b=new Class(
{
initialize: function ()
{
this.parent.initialize.apply(this,arguments);
this.b=1;
}
}).extend(a);
var c=new Class(
{
initialize: function ()
{
this.parent.initialize.apply(this,arguments);
this.c=1;
}
}).extend(b);
var d=new c;
alert(d.a && d.b && d.c);