플래시는 정말 훌륭한 도구인 것 같습니다. 부드러운 모션과 편리한 툴을 이용하여 멋진 UI를 구성할 수 있다는 것은 정말 높게 평가할 수 있습니다. 하지만 플러그인을 설치하여야 하고, 접근성의 문제와 컴퓨터의 많은 리소스를 차지하기 때문에 차세대 웹인 모바일에서는 별로 주목받지 못하고 있는데요. 더군다나 애플이라는 모바일의 강자에게 외면당하고 있으니 앞으로의 플래시의 행보가 걱정이 되는데요.

인터넷을 서핑하다보면 부드러운 모션과 멋진 효과들로 이루어진 메뉴들을 많이 볼 수 있습니다. 퀄리티를 보고 그곳에 우측클릭을 해보면 한번에 무엇으로 만들어졌는지 알 수 있지만, 대중적으로 플래시를 이용하여 많이 만들어지고 있습니다. 하지만 접근성 문제를 고려하고 페이지 로딩 속도등을 고려하면 플래시는 그리 좋은 선택이라고는 할 수 없는데요. (일반적인 사용자는 크게 알 수 없겠지만요.) 또한 폰트 문제가 있습니다. 코드로 이루어진 것은 제작자가 원하는 임의의 폰트를 사용할 수가 없었는데요. 이제는 CSS3를 통해 거의 대부분의 브라우저가 (IE포함) 웹폰트를 지원하고 있기 때문에 폰트는 이제 큰 문제가 아닌 것 같습니다. 그렇다면 가장 큰 문제가 되는 것이 부드러운 모션이 있는데요. jQuery를 이용하면 간단한 모션 효과를 구사할 수 있습니다. 하지만 이것은 더 생각해 봐야 할 문제이긴 한데요. jQuery를 이용하여 플래시 메뉴와 비슷한 모양을 표현해보았습니다. 어디 한번 평가해 볼까요?

Posted by 나의시점
,
유용한 jQuery를 이용하여 트리구조를 만들어보았습니다. 여러가지 UI가 있겠지만 이번에 만들어본것은 모든 아이템에 링크가 가능하고 "+", "-" 아이콘을 이용하여 하위 메뉴를 열고 닫을 수 있습니다. jQuery는 정말 사용할 수록 좋은 점이 너무 많은데요. 이번에 중점적으로 보아야 할 것은 두가지가 있는데요.

한가지는 어떠한 앨리먼트를 가지고 있는 개체를 선택하는 것인데요. :has(ul) 을 사용하게 되면 ul 을 가지고 있는 모든 개체를 선택할 수 있게 됩니다.

그리고 다른 한가지는, 자식요소를 선택하는 필터인데요. li:last-child 라는 것을 이용해서 li 중에 맨 마지막 자식요소 인것을 한번에 모두 선택할 수 있습니다.

정말 편한 기능이지요? 이것을 사용하게 되면 html에 일일히 클래스명을 주지 않아도 공통점이 있는 자신이 원하는 요소마다 같은 클래스명을 한번에 줄 수 있게 됩니다. 그렇다면 본격적으로 한번 보면 좋을 것 같은데요. 작업의 스트레스와 피로도를 최소화 하기 위해 걸그룹과 함께 작업하였습니다. jQuery 와 걸그룹의 절묘한 만남!


위와 같은 형태로 트리구조를 만들어 보았습니다.


Posted by 나의시점
,
webkit 기반의 iPhone은 인풋박스를 자기 마음대로 표현하는 경향이 있습니다. 스타일시트로 보더와 색상을 조정해도 마음대로 되지 않는데요, 오늘은 아이폰에서 보여지는 인풋박스를 마음대로 요리하는 방법에 대해 이야기 하겠습니다. 일단 기본적으로 style을 width:200px; height:30px; border:1px solid #00f; 정도만 주었습니다. 일반 PC에서는 스타일을 준대로 잘 나올텐데요. 아이폰의 사파리로 같은 페이지를 보았을 경우에는 이렇게 보이게 됩니다.


흠,,,,, 일단 모서리가 동그랗게 되어있고, 상단에 그림자가 있는데요. 이래가지곤 원하는 디자인을 만들 수 없겠죠? 주면의 디자인과 어울리지 않을 수도 있고요. 그렇다면 이것을 반듯하게 만들어 보겠습니다. 스타일시트에 다음의 속성을 넣어주면 되는데요.

<style type="text/css">
input {-webkit-border-radius:1px;}
</style>


네, 이제 네모 반듯해졌네요. 그런데, 박스의 상단에 흐릿한 그림자가 있네요. 이게 웬 언밸런스입니까? 위에있는 그림자도 없애야지 더 마음에 들 것 같네요.

<style type="text/css">
input {-webkit-border-radius:1px; -webkit-apprearance:none;}
</style>

이렇게 해주면 그림자는 깔끔히 없어지게 됩니다. 볼까요?


이야~ 이제 제가 원하는 스타일이 되었습니다. 깔끔하게 반듯한 테두리만 남게 되었네요. 기분에 좋습니다. ^^ 여러분도 아이폰에서 인풋박스가 마음에 안들게 보일때는 이 방법을 써보세요.

 HTML5 input 의 속성 설명은 여기에서 보실 수 있습니다.

모바일에도 편안한 인터넷 세상이 올때까지!! 화이팅!

Posted by 나의시점
,
아이폰으로 인터넷을 하다보면은 여러가지 폼에다가 입력을 해야 할 경우도 많습니다. 아이폰을 사용해보신 분들은 아시겠지만 상황에 따라서 다른 키보드가 뜨는데요. 오늘은 input 박스의 type에 따라 다르게 뜨는 키보드의 모양의 분석해 보겠습니다.

우선 기본적으로 나오는 type=text 일 경우에는 다음과 같은 키보드가 나옵니다.


text일 경우에는 기본적인 키보트가 뜹니다. 인풋박스들이 <form> 태그에 쌓여있기 때문에 아래에는 "go" 라고 버튼이 뜹니다.

그렇다면 다음에 있는 땡땡땡 부분은 다들 아시다시피 password 부분입니다. 그 곳에 포커스가 가게 되면,


위와 같은 키보드가 돌출하게 되는데, 한가지 다른 점은 처음에 입력하는 값을 대문자로 입력하게 해주는, shift가 안눌려있습니다.


다음은 이메일인데, type을 email로 했을 경우에는 아주 친절하게도 @ 와 . 이 나오게 됩니다. 입력하기 참 쉽겠죠?


type=number 에 포커스 되었을 때는 특수문자를 눌렀을 경우와 같은 키보드가 나옵니다.


오늘의 하일라이트, type=tel 일경우에는 전화번호를 쉽게 입력할 수 있도록 전화번호 키패드가 뜨게 됩니다. 이거 정말 마음에 드네요. 주민등록번호나 전화번호를 입력할 때 사용하면 좋을 듯 합니다.


url의 경우도 email과 비슷합니다. url을 쉽게 입력할 수 있도록 /(슬래시)와 .com(닷컴)이 나오게 됩니다. 입력할 때 편하겠네요.


type=search 일 경우는 "Go" 부분이 "Search"로 변하고 나머지는 동일합니다. 다른 것들은 text와 동일하게 뜨므로 이미지는 생략하였습니다.

이런 것들을 잘 사용하면, 사용자들이 좀 더 편하게 사용할 수 있겠지요? 참, 그리고 한가지 팁은 url을 입력할 때, url을 입력하는 키보드가 나오지 않았을 경우에 닷컴을 입력하려면 특수문자 부분을 한번 갔다와야 하는데, 그렇지 않고 스페이스바를 두번 누르게 되면 점이 찍힙니다. 그런다음에 백스페이스를 한번 눌러주시고 입력해주시면 특수문자 키보드로 바꾸지 않고도 손쉽게 입력하실 수 있습니다.
Posted by 나의시점
,
요즘 아이폰의 보급으로 많은 사람들이 iPhone을 사용하고 있습니다. 그래서 iPhone의 Safari에 최적화된 웹페이지를 많이 제작하고 있는데요. 아이폰 사파리는 모바일 브라우저로 여러가지를 고려하여 개발해야 하는데요. 앞에서 포스팅한 전화번호 링크와 화면 확대되는 부분이외에 화면 확대는 막았어도 텍스트가 자동으로 확대가 되는 것을 볼 수 있습니다. 세로로 딱 맞게 작업했을 경우 가로로 보게 되면 폰트가 확대되어 있는 것을 볼 수 있는데요. 이렇게 되면 어느 환경에서나 잘 보이게 개발하기 힘들겠죠? 그래서 폰트가 확대되는 것을 막아야 합니다.

그림에서 볼 수 있듯이 세로로 잘 맞게 작업한 경우 가로로 봤을 때 두번째의 그림같이 확대가 되게 됩니다. 그래서 원래 생각했던 디자인과 다르게 나오게 될 수 있는데요.



이러한 경우에는 스타일 시트를 약간 수정하는 것으로 문제를 해결할 수 있습니다.

<style type="text/css">
* {-webkit-text-size-adjust:none;}
</style>

이렇게 해주면 아래의 그림과 같이 가로로 보았을 때도 세로로 보았을 때와 동일한 폰트 크기로 볼 수가 있습니다. 아이폰이 아직도 세력을 넓혀가고 있는 가운데, 모바일 개발에 없어서는 안되는 중요한 정보 같습니다. 저도 잘 기억하고 있어야겠네요.


Posted by 나의시점
,
아이폰 사파리에서 웹 서핑을 하다보면 자기도 나름 폰이라고 전화번호와 비슷하게 생긴것에는 자동으로 링크가 걸려 그것을 누르면 전화가 걸립니다. 어찌보면 똑똑하고 좋으나 웹사이트를 개발하는 입장에서 보면 좀 반갑지 않은 기능이기도 한데요.
이런 상황을 극복하기 위한 방법!!

<meta name="format-detection" content="telephone=no" />

위와 같은 매타값을 주게 된면, 아이폰의 사파리가 자기 마음대로 링크를 만들지 않습니다.
헌데, 혹시나 전화 바로거는 링크를 만들일이 있지 않을까요? 물론 그럴 때를 대비해서 요런 방법이 존재합니다.

<a href="tel:010-1234-5678">전화를 거는 링크</a>

위와 같이 <a>태그를 걸어주면 아이폰 사파리에서 바로 전화를 거는 링크를 만들 수 있다습니다. ^^
이 것을 사용하면 좀 더 사용하기 편리한 사이트를 만들 수 있겠죠?
쓰면 쓸수록 아이폰, 이건 참 물건인 것 같네요. 허허허
Posted by 나의시점
,
2009년 말 우리나라에도 아이폰이 출시하면서 우리나라의 인터넷 환경도 많이 바뀌게 되었는데요. 비단 아이폰 뿐만아니라 아이본과 더불어 삼성의 옴니아2, 그리고 구글의 새로운 모바일 OS 안드로이드를 탑재한 폰들이 다수 나오게 되면서 2010년 상반기는 인터넷 업계에도 많은 변화가 일어난 것 같습니다. 포털에는 모바일 웹페이지와 모바일폰용 어플리케이션 개발이 당연하게 되었구요. 앞으로는 더 다양한 분야에서, 그리고 다양한 사람들이 모바일 웹페이지를 만들고 사용하게 될것입니다. 그러기 위해선 "접근성"이라는 문제가 대두되게 되는데요. 이전에 이야기하던 장애인에 국한된 접근성이 아니라, 어떤 장애가 있든지 + 어떤 환경에 있든지 정보에 접근할 수 있고 그것을 이용할 수 있어야 할 것입니다.

모바일 웹을 개발하기 위해서는 일반 컴퓨터 환경과는 약간 다르기 때문에 고려해야 할 사항들이 몇가지 있습니다. 오늘은 처음으로 모바일 웹에 대해 이야기 하고자 하는데요. 모바일 웹이 일반 웹과 다른 것 중 가장 중요한 것은 접속하는 환경적인 차이가 너무 확연하게 크다는 것입니다. 이미 웹 표준이 대두되면서 크로스브라우징 문제가 많이 있었는데요. 우리나라의 인터넷 익스플로러 기반으로 개발된 많은 웹페이지가 다른 브라우져(파이어폭스, 사파리, 크롬, 오페라 등)에서 많이 깨지게 되는 현상입니다. 그래도 그나마 그것은 비슷한 컴퓨터 환경인데 모바일 환경은 그 차원이 달라집니다. 우선 OS부터에서 매우 다양하고, 마우스가 없으며 키보드가 제한적입니다. 그리고 무엇보다 디스플레이의 해상도가 천차만별입니다. 그러한 다양한 환경을 극복하기 위해서는 일단 심플하고 어떠한 화면 해상도도 커버할 수 있는 문서를 만들어야 합니다.

오늘은 처음으로 meta 값인 viewport 를 살표보도록 합시다. 우선 시원스럽게 사용방법부터 보지요. 메타값은 head 부분에 넣는 것은 다들 아시겠죠?

<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />

viewport는 화면의 확대를 관리하는 것입니다. 모바일 웹브라우져는 대부분 기기의 화면이 작기 때문에 원래의 페이지를 축소해서 보여줍니다. 하지만 모바일에 최적화 된 페이지는 그럴 필요가 없겠죠? width 를 100%로 주어 어떤 해상도에서도 딱 맞춤형으로 나오는 것이 사용성이 훨씬 좋아집니다. 그러기 위해서는 화면을 확대하는 것을 방지해야 하는데요. 이것을 사용하면 가로보기로 전환시에 확대가 되는 것을 방지 합니다. 코드의 내용을 자세히 보면, initial-scale 은 처음 열렸을 때, maximum-scale 은 확대시의 최대로 확대되는 비율을 나타냅니다. 그리고 user-scalabe 을 통해서 확대를 사용할지 안할지를 결정할 수 있습니다.


보통의 아이폰 사파리의 화면입니다. viweport 를 사용하지 않을 시에는 가로보기로 전환시 화면이 확대되게 됩니다. 하지만 viewport meta 값을 적용해주게 되면 가로나 세로에서 아주 딱맞에 화면에 표현됩니다.


폰트의 크기 변화가 없고, 화면의 width 가 넓어졌기 때문에 상단에 보이는 2번째 메뉴가 한줄로 늘어서게 된것을 볼 수 있습니다. 이 것을 사용하면 좀 더 매력적인 모바일 사이트를 만들 수 있습니다.

제 생각에 지금 이슈화 되고 있는 모바일 웹은 앞으로 인터넷 환경이 나아가게 될 새로운 시작이라고 생각합니다. 지금의 스마트폰 정도에서 뿐만 아니라, 아이패드 같은 다른 차원의 모바일 기기, 그리고 TV 로 까지 많은 변화가 일어날 것입니다. PC에서만 보아왔던 인터넷은 이제 어떠한 환경에도 구애받지 않고 우리에게 다가오게 될 것입니다. 한동안 잠잠했던 인터넷 세상은 크게 변화하기 위해 꿈틀거리고 있는 것 같습니다. 아직은 하루 앞이 잘 보이지 않지만 더 좋은 세상이 올거라는 것을 믿어 의심치 않습니다. 그런 좋은 세상을 만들기 위해 바로 우리가 노력해야 하는 것이 아닐까요?

Posted by 나의시점
,
마이크로소프트에서 인터넷 익스플로러 6의 시장점유율을 0으로 만들겠다고 발표한 가운데 다음에서도 인터넷 익스플로러 업그레이드 프로모션을 벌이고 있습니다. 다음은 좀 더 세게 나오는데요? 30일동안, 매일 100명에게 영화예매권을 준다는데요. 흠,,, 가격으로 환산해보면 영화한편이 8000원인데 예매권이라 작게잡아 한 5000원이라고 가정했을 때 하루에 100명이면 500,000원(50만원), 그게 30일이면 15,000,000원(천오백만원)이 됩니다. 뭐 계산해보니 그렇게 많이 많지는 않네요 ㅋㅋ 아무튼 이러한 노력을 한다는 자체가 너무 반갑습니다. 웹표준에 준하지도 않고 자기만의 렌더링 스타일을 가진 IE6은 이제 그만 써야 할때도 되지 않았나 싶습니다. 더 좋은 도구를 가지고 있으면 더 좋은 것을 경험할 수 있다는 것을 많은 사람들이 인지할 수 있엇으면 좋겠는데요. 우리나라의 여러 엑티브엑스로 도배된 사이트들이 하루빨리 개편이 되었으면 좋겠네요.

다음 메인을 IE6으로 접속한 화면입니다. 브라우저를 업그레이드 하시라고 권유하는 창이 뜨네요.


광고영역에 까지 광고를 하고 있습니다. 저영역 비싸지 않나? ㅋ


프로모션 페이지에서는 인터넷 익스플로러8의 좋은 점들을 소개하고 있습니다.


프로모션 페이지 바로가기

우리나라의 인터넷도 이제 조금씩 변화하고 있다는 것이 느껴지는 군요. 이참에 브라우저 업그레이드 한번 하심이 어떠실지요? ^^


모질라 파이어폭스

구글 크롬

사파리

오페라

'' 카테고리의 다른 글

네이버와 함께하는 PC보안 업그레이드 캠페인  (0) 2010.06.03
Posted by 나의시점
,
마이크로소프트의 인터넷익스플로러(IE) 담당 선임이사인 '리안 가빈'은 자신의 IE6 브라우저 시장 점유율을 가능한 빨리 0을로 만드는 것이라고 하였습니다. IE6 버전은 지은 2001년 출시된 윈도우 XP와 함께 10년째 사용되고 있는데 오랫동안 웹표준을 제대로 지원하지 않아 많은 비판을 받아왔습니다. 하지만 어찌보면 웹 표준이 대두되지 않았을 예전에 만들어진 브라우져이고, 이후에 다른 버전들이 2가지나 더 나오고 빠른 시일내에 또 새로운 버전이 나오게 되는데 브라우저를 욕하는 것은 좀 우스운 일이라고 볼 수도 있습니다. 10년동안 같은 브라우저를 고수하는 사용자의 문제도 조금은 있는 것 같은데요. 세계적으로 보면 이제는 IE의 점유율이 점점 하락하고 있습니다. 유럽의 경우는 마이크로소프트의 IE의 브라우저 끼워팔기 문제가 대두되어, 윈도우7에서는 웹브라우저를 선택하는 화면이 제공되게 되었습니다. 우리나라는 대부분의 사이트에 엑티브엑스가 들어있어서 IE의 점유율이 특히나 높은데요. 이렇게 포털에서부터 캠페인을 해주니 마음이 좀 편해지는 듯 하네요. 빠른 시일내에 좋은 결과가 있길 바랍니다.

이 참에 모두들 브라우저 업그레이드 한번 하심이 어떨까요?


이벤트 페이지

관련기사링크

Posted by 나의시점
,
1. 입력상자에서 자리수 차면 이동하기
 <SCRIPT-x language=JavaScript-x>
<!--
function Numberchk() {
 if ((event.keyCode<48)||(event.keyCode>57)){
  alert("숫자만 !!");
  event.returnValue=false;
 }
}
function Nextchk(arg,len,nextname) {
 if (arg.value.length==len) {
  nextname.focus() ;
  return;
 }
}
// -->
</SCRIPT-x>
<!-- 자릿수가 차면 다음 포커스로 이동하는 합니다 -->
<FORM method=post name=zipcode>
<font size="2">우편번호</font>
<INPUT maxLength=3 name=zip1 size=3 onkeypress='Numberchk()' onkeyup='Nextchk(this,3,document.zipcode.zip2)'>
-
<INPUT maxLength=3 name=zip2 size=3 onkeypress='Numberchk()'>
</FORM>

2.입력상자에서 정수만 입력가능
<SCRIPT-x language=JavaScript-x>
<!--
function Numberchk() {
 if ((event.keyCode<48)||(event.keyCode>57)) {
  alert("숫자만 !!");
  event.returnValue=false;
 }
}
// -->
</SCRIPT-x>
<FORM method=post name=zipcode>
<font size="2">우편번호</font>
<INPUT maxLength=3 name=zip1 size=3 onkeypress='Numberchk()'>
- <INPUT maxLength=3 name=zip2 size=3 onkeypress='Numberchk()'>
</FORM>



Posted by 알 수 없는 사용자
,