14. juli 2007 - 00:50Der er
8 kommentarer og 2 løsninger
Markere HTMLElement ved klik
Hej.
Findes der en måde hvormed man kan markere et htmlelement uden at layout forskubber sig? Når der klikkes på et htmlelement skal htmlelementet markeres med en smal rektangel udenom. Jeg har prøvet, at sætte border på det enkelte htmlelement, men det forskubber layout.
Jeg har fundet ud af det. Spørgsmålet var i sidste ende mest DOM/CSS/DHTML relateret idet det bliver/er kodet i c#. Indtil videre har jeg løst det ved, at indsætte div tags i DOM.
Eksempel på div tag + lidt c#: "position:absolute; z-index:1000; height:{3}; left:{1}px; top:{0}px; width:{2}; border-top:1px solid red; border-bottom:1px solid red; border-left:1px solid red; border-right:1px solid red; visibility: show;", width, y, x, width, height
Ulempe: z-index samt muligvis selection af de ikke indsatte tags (c#). Det bliver nok lavet om så jeg istedet tegner på ActiveX kontrollen i c#.
Jeg forstår ikke rigtig det CSS, du skriver ... men det er formodentlig ikke, hvad du i virkeligheden har skrevet - eller, hvad der i sidste ende kommer til at stå i koden =)
Det kan sagtens gøres med ren CSS, men det kræver, man kender lidt mere til sammenhængen =)
Basically oprettede jeg et div tag som dækker det element der er blevet klikket på. Dvs. et div tag per element der bliver klikket på med musen. Div taggene får tildelt følgende style: position:absolute; z-index:1000; height:{3}; - højde på element left:{1}px; - elementets placering fra venstre kant. top:{0}px; - elementets placering fra top. width:{2}; - bredde på element border-top:1px solid red; border-bottom:1px solid red; border-left:1px solid red; border-right:1px solid red; visibility: show
{} - er fordi det bliver angivet dynamisk i c# koden. Da jeg oprettede spørgsmålet her håbede jeg på en javascript funktion som jeg så kunne oversætte til c#. Smid et svar hvis du vil have point :)
Mon ikke, der skulle stå: height:{3}px; - højde på element
- og: width:{2}px; - bredde på element
Enheder er obligatoriske på CSS-højder og -bredder ;o)
Afhængigt af hvilken slags element, der er tale om, kan man vel ændre elementets bredde og højde - og sætte en border samtidigt. Det kræver mere info at vide, hvordan =)
Ok så må det være det jeg anvender der selv tilføjer px såfremt intet andet er angivet. Vil den sidste mulighed du nævner ikke ændre layout? fx. ved billeder, tekst? Meningen er, at layoutet ikke må ændre sig en pixel i forhold til det oprindelige. Smid et svar så deler vi point.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.