Page 1 of 1

setAttribute('style'추가질문?

Posted: 2004 12 07 14:58 10
by 박민권
setAttribute('style','스타일'); 을 이용해서 객체의 스타일을 지정하는데

몇가지 계산을 마친후 나머지 스타일을 추가하려고 했습니다.

그래서 다시한번 setAttribute('style',"추가스탈"); 했더니 이전 스타일이 전부
날아갔습니다. ㅡㅡ;

무식한 방법으로 setAttribute('style',getAttribute('style')+"추가스탈");
로 해결했지만 정말 찝찝하기 그지 없습니다. ㅡㅡ;

누구 비데 좀... 부탁드립니다.

Posted: 2004 12 07 19:09 54
by hyeonseok
<div style="border: 1px solid #f00;">

에서 style 을 setAttribute 로 정의 하게 되면...

<div style="border: 1px solid #f00; background: #0f0;">

이 되는 것이 아니라

<div style="background: #0f0;">

가 됩니다. border 는 사라지겠죠..

이미 정의 된 스타일이 있고 추가로 스타일을 정의 하려고 하신다면 class 를 사용하는 것이 더 좋을 것입니다.

<div class="class1">

이 있고...내가 만든 추가 style 을 class2 로 정의 하고 ..

HTMLDivElement.className = "class1 class2";

와 같이 하는 것이 좋을 것 같네요...

setAttribute 로 class 를 바꾸는 것은 안되니까요...^^

감사합니다.

Posted: 2004 12 08 00:54 53
by 박민권
답변 감사합니다.

아무래도 따로 방법이 없나 보군요.

class는 안써야할 부분이라 기존 스타일을 다시 한번 불러서 붙이는 것 말고는

방법이 없겠네요.

지저분해 보여서 싫지만 ㅠ_ㅠ

..

Posted: 2004 12 08 11:38 13
by tenshi
Element.style 을 사용하시면 되지 않을까요?

꼭 setAttribute를 사용할 이유가 없으시다면요..

브라우저마다 차이가 있는것도 아니고,

추가와 수정이 자유롭기도 하고.. :)

Re: ..

Posted: 2004 12 08 14:29 47
by 박민권
tenshi wrote:Element.style 을 사용하시면 되지 않을까요?

꼭 setAttribute를 사용할 이유가 없으시다면요..

브라우저마다 차이가 있는것도 아니고,

추가와 수정이 자유롭기도 하고.. :)
왠만하면 setAttribute로 해주고 싶어서요. 에휴~

.style을 좀 섞긴 섞었습니다. 스타일 하나씩 정할때는 setAttribute가 좀 불편하군요.