[CSS]element als nep-popup uit de flow halen

Pagina: 1
Acties:

  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 19:46
Ik heb de volgende pagina:
http://oisterwijksculptuur.djluc.nl/index.php?id=449

Na een klik op jan janssen verschijnt er een divje. Hoe kan ik dit divje uit de flow halen? Ik heb al geprobeerd om dit te doen middels een float: left en position absolute maar ik krijg het niet voor elkaar. Op dit moment is dit een stukje relevante css:
Cascading Stylesheet:
1
2
3
4
5
6
7
8
9
.tx-oskunstenaars-pi1-kunstenaar-single {
    float: right;
    left: -310px;
    top: -80px;
    width: 600px;
    height: 400px;
    display: none;  
    z-index: 100;
}


Ik heb al wel een alternatieve maar lelijke oplossing bedacht:
Ik laat met javascript na een klik op de naam van de kunstenaar een divje aanmaken:
JavaScript:
1
2
3
4
5
6
7
//gewoon pseudocode voor het idee
function show(id) {
  var content=document.getElementById('kunstenaar-'+id).innerHTML;
  var popup=document.createElement('div');
  popup.innerHTML=content;
  document.body.appendChild(popup);
}

Zoiets dus maar dit is niet echt een mooie oplossing, ik zou het liever gewoon met CSS regelen.

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Hoezo uit de flow halen, met welk doel als ik vragen mag :)

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 19:46
BtM909 schreef op woensdag 11 mei 2005 @ 14:27:
Hoezo uit de flow halen, met welk doel als ik vragen mag :)
Zoals je nu ziet valt mijn "nep-popup" binnen de tekst-div. In de tekstdiv staat normaal gesproken alle content. Die div wil ik echter over de site een leggen. Dat wil me dus niet lukken.

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Position:absolute gebruiken :)

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 19:46
Ik heb al geprobeerd om dit te doen middels een float: left en position absolute
Hij staat nu toch even online met een position: absolute; maar ook dit werkt niet.

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

djluc schreef op woensdag 11 mei 2005 @ 14:36:
[...]

[...]
Hij staat nu toch even online met een position: absolute; maar ook dit werkt niet.
Waarschijnlijk in een parent met een position: relative? Vind je code redelijk ondoorzichtig :P, maar je kan die <div> toch helemaal los (bijvoorbeeld einde van je source) te plaatsen?

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 19:46
De CSS code is overigens hier te vinden:
http://djluc.nl/fileadmin...uur/template/res/core.css

Verder is de HTML toch redelijk netjes? De structuur is iets als
<html>
<body>
<div id="layout">
<div id="contenttext">
<divjes met de kunstenaars>

Verder gebruik ik alleen voor de submenu's boven (Li tags) relative positionering.

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Check dit simpel voorbeeld:
HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<html>
<head>
<style>
.BtM909{
  border: 1px solid red;
  width: 500px;
  height: 250px;
  position: relative;
}

.BtM909 span{
  border: 1px solid green;
  position: absolute;
  top: 100px;
  left: 100px;
}
.djluc{
  border: 1px solid black;
  width: 500px;
  height: 250px;
/*  position: relative;*/
}

.djluc span{
  border: 1px solid yellow;
  position: absolute;
  top: 100px;
  left: 100px;
}
</style>
</head>
<body>
<div class=BtM909>BtM909
  <span>Parent is relative, dus deze is absoluut tov parent</span>
</div>
<div class=djluc>djluc
  <span>Indien parent niet relative (en dus static) is, absoluut tov. body</span>
</div>
</body>
</html>


Ff snel in elkaar geklapt ;)

offtopic:
added @ msn

[ Voor 12% gewijzigd door BtM909 op 11-05-2005 14:49 ]

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 19:46
Ik heb even wat getest maar heb nog geen oplossing gevonden. Ook iets als dit werkt niet:
HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<html>
<head>
<style>
.BtM909{
  border: 1px solid red;
  width: 500px;
  height: 250px;
  position: relative;
}

.BtM909 span{
  border: 1px solid green;
  position: absolute;
  top: 100px;
  left: 100px;
}
.djluc{
  border: 1px solid black;
  width: 500px;
  height: 250px;
  position: static;
}

.djluc span{
  border: 1px solid yellow;
  position: absolute;
  top: 100px;
  left: 100px;
}

.layout {
    position: relative;
}
</style>
</head>
<body>
<div class="layout">
    <div class=BtM909>BtM909
        <span>Parent is relative, dus deze is absoluut tov parent</span>
    </div>
    <div class=djluc>djluc
        <span>Indien parent niet relative (en dus static) is, absoluut tov. body</span>
    </div>
</div>
</body>
</html>
Eigenlijk ook logisch. Alle div's van het besbetreffende element tot aan de body moet ik dan met static positioneren?

  • AkaXakA
  • Registratie: Januari 2001
  • Laatst online: 27-03 16:12

AkaXakA

Just Kidding...

http://www.akaxaka.tk/ - "Knowledge is power. Power corrupts. Study hard, be evil." - 4 Jaar GoT en nog steeds niet evil: er moet een verband zijn...


  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 19:46
Ik ben voor de JavaScript oplossing gegaan. Deze konden we kosten-effictief het beste gebruiken. Als ik nog eens tijd over heb kan ik het misschien netter oplossen. Op http://oisterwijksculptuur.djluc.nl/index.php?id=449 is het resultaat te zien. Bedankt voor de hulp. AkaXakA: Ik ga je linkje als ik tijd heb nog eens goed bekijken want dat lijkt inderdaad een oplossing.

Het stukje JS wat werkt:
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
var popupid='tx-oskunstenaars-pi1-kunstenaar-popup';
var kunstenaarpopup='';
function startKunstenaars() {
    kunstenaarpopup=document.createElement('DIV');
    kunstenaarpopup.innerHTML='Kunstenaar wordt opgezocht.';
    kunstenaarpopup.setAttribute('id', popupid);
    document.body.appendChild(kunstenaarpopup);
}

function showKunstenaar(uid) {
    if(!document.getElementById(popupid)) {
        startKunstenaars();
    }
    var row=kunstenaars[uid];
    document.getElementById(popupid).innerHTML='<div id="tx-oskunstenaars-pi1-kunstenaar-'+uid+'" class="tx-oskunstenaars-pi1-kunstenaar-single"><div class="tx-oskunstenaars-kunstenaar-single-wrapper"><div class="tx-oskunstenaars-kunstenaar-images"><a href="javascript:closeKunstenaar('+uid+');void(0);">[img]"'+row['image']+'"></a></span><p[/img]'+row['namephoto']+'</p></div></div>';
}
Pagina: 1