2009년 2월 16일 월요일

[CSS]IE6 스타핵으로 png 배경으로 적용시 링크가 안먹힐때

png 를 배경으로 할경우 익스6에서는 png를 지원하지 않기에 스타핵이나 언더바핵으로 png를 css에서 처리해주었습니다. 하지만 배경위에 텍스트나 이미지에 링크값이 들어갈경우 익스6에서 링크가 안먹히게 됩니다.
이럴경우 해당 링크 즉 png 배경위에 링크 부분에 position:relative; 를 주시면 해결됩니다.
(이미지가 겹치는 부분만 링크가 안먹힙니다.)

ex)

css 소스
* html #png {background:none; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='img.png',sizingMethod='crop'); }



<div id="#png"><a href="http://www.webmini.net" style="position:relative;" >웹미니 바로가기</a>

위와 같이 a 태그 안에 style에 position:relative; 를 추가해주시면 됩니다.
물론 class 로 불러와도 되며, 아래와 같이 해당 id 값 a 링크부분에 정의를 해주셔도 됩니다.

#png a {position:relative;}

해당 png 안에 있는 모든 a 태그는 전부 적용이 되는 형식입니다.

익스6이 사라지는 그날까지...
 

2009년 2월 6일 금요일

[CSS]메일링 코딩 스타일

· 메일링 코딩스타일 적용테스트 (외부스타일 제외)


메일링 코딩을 할때 여러분들은 웹표준에 맞춰 코딩을 하는지요?

메일링은 웹페이지로 볼수 없으며, 구조화를 시킬 필요도 없고, 시킬수도 없다는게 제 개인적인 생각입니다.
그래서 몇가지 테스트를 해보았습니다. 사실 꽤 오래전에 테스트를 한건데 이제서야 공유를 합니다.

css 를 부르는 방법은 크게 3가지로 분류 됩니다, (외부스타일, 내부스타일, 인라인스타일)
여기서 외부스타일은 메일제공 사이트와 class 충돌문제가 발생할수 있어 테스트 항목에서 제외시켰습니다.
총 테스트 방법은 3가지(옛날방식, 인라인방식, 내부스타일) 이며, 자주이용하는 메일 9개만 테스트 해보았습니다.


  옛날방식 인라인스타일 내부스타일 비고
Daum O O O  
네이버 O O X 이미지를 첨부파일로 인식, 내부스타일 적용안됨
야후 O O O  
파란 O O O 이미지를 첨부파일로 인식
구글(G메일) O X X 스타일 적용안됨
엠파스 O O O  
네이트 O X X 스타일 적용안됨, 이미지를 첨부파일로 인식
코리아닷컴 O O O 이미지를 첨부파일로 인식
Outlook Express O O O  


● 간단하게 3가지 방식을 설명을 드리자면

- 옛날방식 : 배경이미지나, 폰트사이즈, 컬러등을 css 로 입히는 방식이 아닌 엘리먼트 안에 직접적으로 해당소스를 삽입하는 방법입니다. ex)<td background="http://www.webmini.net/test_bg.gif">
- 인라인스타일 : 배경이나, 폰트사이즈, 컬러등을 해당 엘리먼트 안에 스타일을 주는 방식입니다. ex)<td style="background:url(http://www.webmini.net/test_bg.gif) no-repeat;">
- 내부스타일 : 해당 페이지 안에 style 소스를 선언후 class 로 불러오는 방식입니다. ex) .wrap --> <td class="wrap">

테스트 결과 네이버, 구글, 네이트는 내부스타일과 인라인스타일이 적용 되지 않았습니다.
스타일이 적용되지 않는 이유는 스타일 충돌이 생겨 메일사이트가 깨지는 경우를 대비해서 해당사이트에서 차단한듯 보여집니다.
위에서도 알수 있듯이 공통적으로 동일하게 보여지게 하기 위해선 옛날방식 (table 방식) 으로 진행이 되어야 하며, 스타일 적용이 되지 않는 곳이 있기에 div 방식은 피하는것이 좋을듯 보여집니다.

[웹표준]믹시의 추적버튼에서 &(엔퍼센트) 에러

Markup Validation Service 에서 유효성 검사를 해보면 &(엔퍼센트)로 된부분은 전부 에러로 잡아냅니다.
파이어폭스 부가기능중에 'html validator' 로 확인해도 에러로 잡아내며, 다음과 같이 사용하라고 알려줍니다.
 
&amp;


여러 사이트를 보면 & 로 되어있는데, 제가 개발자가 아니라서 & 의 사용용도는 정확하게 모르겠습니다.
믹시를 예로 들자면 아래와 같이 추적버튼의 링크를 제공해줍니다.



제공해준 이미지경로 주소를 보시면 <img src='http://mixsh.com/widget/mr/but.html?p=haY51hVrovetsWaHO9uTcTVC6QR5J3CTC92G18h0Qa4%3D&t=12' alt='믹시' border='0' />
&(엔퍼센트)가 들어감을 알수 있습니다.
해당소스를 넣고 유효성 검사를 해보면 & 부분은 모두 에러로 잡습니다.


그래서 'html validator' 에서 알려준데로 추적버튼 소스에 & 대신 &amp; 로 수정하고 유효성검사를 해보았습니다.
수정된 소스는 다음과 같습니다.

<img src='http://mixsh.com/widget/mr/but.html?p=haY51hVrovetsWaHO9uTcTVC6QR5J3CTC92G18h0Qa4%3D&amp;t=12' alt='믹시' border='0' />



음.. 결과는 통과했다고 나오네요.
& 를 &amp; 로 바꾸어 사용하는게 맞는거 같긴한데, 개발자분들은 어떻게 생각하시는지요?


2009년 2월 4일 수요일

[CSS]IE6 스타핵에서 띄어쓰기

크로스브라우징을 위해 CSS hack 를 사용할때가 종종 있습니다.

IE6 용으로는 스타핵을 사용합니다. ex)* #footer
어떤사람은 *html 이렇게 붙혀서 사용하고, 또 어떤사람은 * html 이렇게 띄어서 사용합니다.
과연 차이점이 뭘까요?

http://jigsaw.w3.org/css-validator/

위에서 CSS 체크를 해보면 *html 는 error 로 잡고, * html 은 error 로 잡지 않습니다.
하지만, IE6에서 결과값은 같습니다.

'CSS 마스터 전략' 에서는 * html 이렇게 띄어쓰는걸로 나와있습니다.

그렇다면 에러로 안잡는 * html 요게 맞다는 얘기인데..
마찬가지로 IE6 전용 '언더바핵'도 error 로 잡습니다. ex)_margin:10px;
언더바핵보다는 스타핵이 소스가 조금더 길어진다는 부분을 빼고는 스타핵을 사용하는게 더 좋을듯 싶네요.
제일 좋은건 핵을 사용안하는것과 IE6이 세상에 없어지는게 베스트긴 하겠지만요.^^

핵을 사용할때도 정확히 알고 사용해야겠다는 생각이 드는군요..
여러분들은 어떻게 사용하셨나요?

[영화]워낭소리 후기

워낭소리 후기.
영화를 보기전 영화에 대한 정보라고는 소가 죽는 슬픈이야기.. 라는 것만 알고 있었습니다.
영화관에 도착해서 영상을 보자마자 '어! 왠 다큐멘터리?'
배우도 모르고, 어떤내용인지 잘모르는상태에서 실화를 영화배우가 재연해서 찍었겠구나! 라고 생각했었는데, 영상을 보고 약간 놀랬습니다.


워낭소리란 무엇인가.?

워낭이란 '소의방울(cowbell)을 말합니다. 즉 소의 방울소리 = 워낭소리가 되겠군요.. (저도 오늘 알았습니다.)
지극히 평범한 농촌생활이라고 생각했지만, 영화를 보는 내내 내자신이 왜이렇게 부끄러워지는지...

소의 수명이 15년~18년 정도 된다던데, 워낭소리의 소는 마흔을 넘어서야 명을 다합니다.
영화속의 소는 죽을때까지 일하면서.. 주인 할아버지의 9남매를 키운 일등공신이기도 합니다.

할아버지의 자가용이기도하고 논밭을 가는 일급인력이라고도 말할 수 있습니다.
사람도 일하는 사람과 집에만 있는 사람을 봤을때 평균수명이 일한사람이 더 오래 산다고 합니다.
동물이나 사람이나 똑같더군요.. (자주 움직여줘야 합니다.)


사람도 나이가 들면 마르는법!
동물도 마찬가지란걸 세삼 느꼈습니다.  우리 워낭소리 주인공 소 역시 나이가 들어서인지 뼈의 윤곽이 보이더군요..
영화를 보면서 불쌍하다는 생각을 많이 했습니다. 소의 눈물도 볼수 있었습니다.

워낭소리의 소는 9남매를 먹여살렸습니다.
죽고 나서도 영화로 대박을 쳤습니다. 영화속의 할아버지와 할머니도 기억에 남지만, 묵묵히 죽을때까지 일한 '소'가 기억에 가장 많이 남는군요.. (죽어서도 주인에게 도움을 주는구나...)

소가 죽었을때 묻어주는 장면은 잊을수가 없었습니다.

소띠해에 정말 볼만한 영화였습니다.
이런류의 영화를 싫어하시는 분은 보라고 권하고 싶지는 않습니다.
슬픈장면을 봤을때 눈물을 흘릴줄 아는.. 아직까지는 인간적인 면이 자신에게 남아있다고 느끼시는 분들께 권하고 싶습니다.

영화관에서 볼수 없었던 꾸밈없는 새로운 느낌의 다큐멘터리 영화였습니다.