<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>겨미♡웹 &#187; IE7</title>
	<atom:link href="http://miya.pe.kr/tag/ie7/feed/" rel="self" type="application/rss+xml" />
	<link>http://miya.pe.kr</link>
	<description>웹 클라이언트 사이드 - UI 그리고 마크업.</description>
	<lastBuildDate>Mon, 05 Mar 2012 08:23:57 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.2</generator>
		<item>
		<title>IE6에서 안되는 CSS Selector, IE7 라이브러리</title>
		<link>http://miya.pe.kr/2008/12/17/ie6%ec%97%90%ec%84%9c-%ec%95%88%eb%90%98%eb%8a%94-css-selector-ie7-%eb%9d%bc%ec%9d%b4%eb%b8%8c%eb%9f%ac%eb%a6%ac/</link>
		<comments>http://miya.pe.kr/2008/12/17/ie6%ec%97%90%ec%84%9c-%ec%95%88%eb%90%98%eb%8a%94-css-selector-ie7-%eb%9d%bc%ec%9d%b4%eb%b8%8c%eb%9f%ac%eb%a6%ac/#comments</comments>
		<pubDate>Wed, 17 Dec 2008 03:42:44 +0000</pubDate>
		<dc:creator>김군우</dc:creator>
				<category><![CDATA[browser]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[IE6]]></category>
		<category><![CDATA[IE7]]></category>

		<guid isPermaLink="false">http://miya.pe.kr/?p=106</guid>
		<description><![CDATA[찬명님의 글에서도 알 수 있듯 IE6에서는 CSS multiple selector도 적용되지 않는데다가 child selector도 적용되지 않습니다. 아래와 같이 a와 b라는 ID를 갖는 디비전이 같은 클래스명을 갖는 하위요소를 포함하고 있다고 칩시다. &#60;div id=&#34;a&#34;&#62; &#60;div class=&#34;content&#34;&#62;…&#60;/div&#62; &#60;/div&#62; &#60;div id=&#34;b&#34;&#62; &#60;div class=&#34;content&#34;&#62;…&#60;/div&#62; &#60;/div&#62; 그런데 문제는 각각 다른 사람 &#8211; 혹은 같은 사람이더라도… &#8211; 이 작업한 a와 b가 부모, 자식간이 [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://naradesign.net/wp/2008/12/16/371/">찬명님의 글</a>에서도 알 수 있듯 IE6에서는 <abbr title="Cascading Style Sheets">CSS</abbr> multiple selector도 적용되지 않는데다가 <a href="http://www.w3.org/TR/CSS21/selector.html#child-selectors">child selector</a>도 적용되지 않습니다.</p>

<p>아래와 같이 a와 b라는 ID를 갖는 디비전이 같은 클래스명을 갖는 하위요소를 포함하고 있다고 칩시다.</p>

<p><pre><code>&lt;div id=&quot;a&quot;&gt;
    &lt;div class=&quot;content&quot;&gt;…&lt;/div&gt;
&lt;/div&gt;</code></pre></p>

<p>&lt;div id=&quot;b&quot;&gt;
    &lt;div class=&quot;content&quot;&gt;…&lt;/div&gt;
&lt;/div&gt;
</p>

<p>그런데 문제는 각각 다른 사람 &#8211; 혹은 같은 사람이더라도… &#8211; 이 작업한 a와 b가 부모, 자식간이 되는 경우입니다. (물론 이미 부모, 자식간인 걸 알고 있어도 문제는 있습니다.)</p>

<p><pre><code>&lt;div id=&quot;a&quot;&gt;
    &lt;div class=&quot;content&quot;&gt;…&lt;/div&gt;
    &lt;div id=&quot;b&quot;&gt;
        &lt;div class=&quot;content&quot;&gt;…&lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;
</code></pre></p>

<p>a에 포함된 content에 스타일을 입히려고 쓴 CSS가 b의 그것에도 영향을 미치게 됩니다. <strong>서로에 대해서 염두해두고 작업을 해야만 하는 것이죠.</strong> 프로젝트 규모가 커지고 요구사항이 빈번하게 바뀐다면 작업 시간은 그에 비례해서 더 커지게 됩니다.</p>

<p>IE6만 아니었으면 <code>#a div.content</code>라는 선택자 대신 <code>#a &gt; div.content</code>라는 선택자를 썼으면 해결될 일이겠죠. 그래서 저희 팀에서는 아래와 같이 항상 prefix를 달아주기로 결정했답니다.;;</p>

<p><pre><code>&lt;div id=&quot;a&quot;&gt;
    &lt;div class=&quot;a_content&quot;&gt;…&lt;/div&gt;
    &lt;div id=&quot;b&quot;&gt;
        &lt;div class=&quot;b_content&quot;&gt;…&lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;
</code></pre></p>

<p>괜찮은 해결책이라고 생각합니다만 클래스명이 쓸데없이 길어지고 마크업만 놓고 보면 “a_”와 같은 의미없는 접두어가 생겨버렸습니다. <a href="http://microformat.org">마이크로포맷</a> 같은 걸 적용하려고 할 때도 귀찮은 일이죠. <a href="http://resistan.com/savethedeveloper">웹 개발자가 살아나지 못하는 한</a> 울며 겨자먹기로 이 방법을 쓸 것 같습니다.</p>

<h3>IE7 자바스크립트 라이브러리</h3>

<p><a href="http://dean.edwards.name/'>Dean Edwards</a>라는 유명한 자바스크립트 개발자가 만든 <a href="http://code.google.com/p/ie7-js/">IE7</a>(브라우저가 아닙니다.)이라는 라이브러리는 IE6의 CSS 지원 정도를 IE7처럼 만들어주는 마법같은 라이브러리입니다. <strong>그런데! 열라 느립니다.</strong> -_-</p>

<p>IE7 라이브러리의 구동원리는 CSS 파일을 XML HTTP 요청으로 다시 받아 그 텍스트를 자바스크립트로 파싱하여 적용해주는 것입니다. 그 이유는 <a href="https://developer.mozilla.org/en/DOM/cssRule.cssText">cssText</a>로 읽을 수 있는 텍스트가 있지만 IE6의 경우 지원하지 않는 선택자 부분이 “UNKNOWN”이라는 문자열로 치환되어 버리기 때문입니다.</p><p>

</p><p class="captionwithsshot"><img alt="" src="/images/2008/ie6_csstext.png" /><br />UNKNOWN이라는 문자열로 바뀌어버린 Child Selector와 마지막 밖에 인식하지 못하는 Multuple Class Selector</p>

<p>따라서 일단 쓸데없는 요청이 한 번 늘어나는 데다가 안 그래도 굼벵이 자바스크립트 엔진을 가진 IE6에서 그 큰 CSS 파일을 파싱한다는 것 자체가 느릴 수 밖에 없는 원인입니다.</p>

<p>IE7 라이브러리 중 Multiple Selector 부분과 Child Selector 부분만 사용해보고자 하였었는데 XML HTTP 요청이라는 제약(CSS 파일의 도메인을 문서와 항상 같게 해야한다는 제약)과 그래도 부담될 IE6의 굼벵이 자바스크립트 엔진 때문에 포기하였습니다. 혹시 시도해보고자 하는 분이 계시면 연락주세요. 그간 IE7 라이브러리를 뜯어보았던 자세한 소감을 말씀드리지요. -_-;;</p>
]]></content:encoded>
			<wfw:commentRss>http://miya.pe.kr/2008/12/17/ie6%ec%97%90%ec%84%9c-%ec%95%88%eb%90%98%eb%8a%94-css-selector-ie7-%eb%9d%bc%ec%9d%b4%eb%b8%8c%eb%9f%ac%eb%a6%ac/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>IE6의 종말, CSS3의 등장</title>
		<link>http://miya.pe.kr/2008/07/12/ie6%ec%9d%98-%ec%a2%85%eb%a7%90-css3%ec%9d%98-%eb%93%b1%ec%9e%a5/</link>
		<comments>http://miya.pe.kr/2008/07/12/ie6%ec%9d%98-%ec%a2%85%eb%a7%90-css3%ec%9d%98-%eb%93%b1%ec%9e%a5/#comments</comments>
		<pubDate>Sat, 12 Jul 2008 12:50:17 +0000</pubDate>
		<dc:creator>김군우</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[웹 표준]]></category>
		<category><![CDATA[CSS3]]></category>
		<category><![CDATA[IE6]]></category>
		<category><![CDATA[IE7]]></category>

		<guid isPermaLink="false">http://miya.pe.kr/?p=86</guid>
		<description><![CDATA[2008년 7월 5일 하드코딩을 하는 사람들 웹 표준 스터디 소모임간의 연합 스터디 시 발표한 자료입니다. &#124; View &#124; Upload your own IE6의 역사 Windows와 함께 버전 업. Windows 98과 함께 IE5가 거의 쓰이지 않게 됨. Windows XP가 쓰이지 않게 되는 시점에 IE6에 대한 지원을 없애게 될 것 Windows 7의 기본 탑재 브라우저에 귀추가 주목됨 웹 [...]]]></description>
			<content:encoded><![CDATA[<p>2008년 7월 5일 하드코딩을 하는 사람들 웹 표준 스터디 소모임간의 연합 스터디 시 발표한 자료입니다.</p>

<div style="width:425px;text-align:left" id="__ss_500052"><object style="margin:0px" width="425" height="355"><param name="movie" value="http://static.slideshare.net/swf/ssplayer2.swf?doc=clearbothorginterstudy-1215258971373965-9"/><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slideshare.net/swf/ssplayer2.swf?doc=clearbothorginterstudy-1215258971373965-9" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object><div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"><a href="http://www.slideshare.net/?src=embed"><img src="http://static.slideshare.net/swf/logo_embd.png" style="border:0px none;margin-bottom:-5px" alt="SlideShare"/></a> | <a href="http://www.slideshare.net/mctenshi/ie6-css3?src=embed" title="View IE6의 종말과 CSS3의 등장 on SlideShare">View</a> | <a href="http://www.slideshare.net/upload?src=embed">Upload your own</a></div></div>

<h3><abbr title="Internet Explorer 6" xml:lang="en" lang="en">IE6</abbr>의 역사</h3>

<ul>
    <li><span xml:lang="en" lang="en">Windows</span>와 함께 버전 업.</li>
    <li><span xml:lang="en" lang="en">Windows</span> 98과 함께 IE5가 거의 쓰이지 않게 됨.</li>
    <li><span xml:lang="en" lang="en">Windows XP</span>가 쓰이지 않게 되는 시점에 <abbr title="Internet Explorer 6" xml:lang="en" lang="en">IE6</abbr>에 대한 지원을 없애게 될 것</li>
    <li><span xml:lang="en" lang="en">Windows</span> 7의 기본 탑재 브라우저에 귀추가 주목됨</li>
</ul>

<h3>웹 표준의 현재</h3>

<ul>
    <li>최신 브라우저들에 비해 <abbr title="Internet Explorer 6" xml:lang="en" lang="en">IE6</abbr>은 웹 표준의 구현 정도가 상당히 뒤쳐짐.
    <ul>
        <li><abbr title="Cascading Style Sheets, Level 2.1" xml:lang="en" lang="en">CSS</abbr> 2.1 지원 부족</li>
        <li><abbr title="Cascading Style Sheets, Level 3" xml:lang="en" lang="en">CSS</abbr> 3 지원 거의 없음</li>
        <li><abbr title="Document Object Model" xml:lang="en" lang="en">DOM</abbr> 2, 3 지원 부족</li>
        <li><abbr title="Hypertext Markup Language" xml:lang="en" lang="en">HTML</abbr> 4.01 일부 지원하지 못함(<code xml:lang="en" lang="en">abbr</code> 등)</li>
    </ul>
    </li>
</ul>

<h3>산 넘어 산, <abbr title="Internet Explorer 7" xml:lang="en" lang="en">IE7</abbr></h3>

<ul>
    <li>최신 브라우저들에 비해 부족하지만 <abbr title="Internet Explorer 6" xml:lang="en" lang="en">IE6</abbr>보다는 나은 <abbr title="Internet Explorer 7" xml:lang="en" lang="en">IE7</abbr></li>
    <li><abbr title="Internet Explorer 6" xml:lang="en" lang="en">IE6</abbr>이 거의 쓰이지 않았을 때 지원해야 할 최고(最古) 브라우저</li>
    <li><span xml:lang="en" lang="en">Windows Vista</span>에 기본 탑재</li>
</ul>

<h3>우아한 성능저하</h3>

<ul>
    <li>최신 웹 표준 기술은 현재 자바스크립트로 구현 가능한 것들을 더 짧은 코드로 가볍게 지원할 수 있다.</li>
    <li>이런 기술들을 지원하지 않는 구 브라우저(<abbr title="Internet Explorer 6" xml:lang="en" lang="en">IE6</abbr>, 7 등)는 정보를 얻는데는 불편함이 없지만 디자인은 일부 요소가 표현되지 않는 우아한 성능저하를 도입할 수 있다.</li>
    <li>전체 사용자들의 사이트 이용비용을 계산했을 때 최소가 되도록 고려.</li>
    <li><abbr title="Internet Explorer 6" xml:lang="en" lang="en">IE6</abbr> 사용자가 과반수인 현재는 아직 무리</li>
    <li>우리나라 웹 업계의 인식 전환 필요</li>
</ul>

<h3>끊임없는 웹 표준 기술의 발전</h3>

<ul>
    <li><abbr title="Internet Explorer 6" xml:lang="en" lang="en">IE6</abbr>, <abbr title="Internet Explorer 7" xml:lang="en" lang="en">IE7</abbr>은 지원하지 않는
        <abbr title="Scalable Vector Graphics" xml:lang="en" lang="en">SVG</abbr>,
        <abbr title="Cascading Style Sheets, Level 3" xml:lang="en" lang="en">CSS3</abbr>,
        <abbr title="Hypertext Markup Language 5" xml:lang="en" lang="en">HTML5</abbr></li>
    <li>웹 제작자들은 현재 실제로 적용하는 웹 표준 기술 이외에 새로운 기술들을 미리 익혀 시장 변화에 대비해야 한다.</li>
</ul>

<h3>웹 표현 기술의 다음, <abbr title="Cascading Style Sheets, Level 3" xml:lang="en" lang="en">CSS3</abbr></h3>

<ul>
    <li><span xml:lang="en" lang="en">Firefox, Opera, Safari</span> 등이 점점 지원의 폭을 넓혀가고 있는 CSS3</li>
    <li>모듈이 세부화되어 <abbr title="World Wide Web Consortium" xml:lang="en" lang="en">W3C</abbr>에서 표준화를 계속하여 진행중이다.</li>
    <li><abbr title="Internet Explorer 8" xml:lang="en" lang="en">IE8</abbr>은 아직 지원 부족</li>
</ul>

<h3><abbr title="Cascading Style Sheets, Level 3" xml:lang="en" lang="en">CSS3</abbr>, 뭐가 좋을까?</h3>

<ul>
    <li>표현을 위한 마크업을 걷어낼 수 있다.</li>
    <li>자바스크립트 등의 외부기술에 의존하지 않은 자체 표현(<span xml:lang="en" lang="en">Native expression</span>) 가능</li>
    <li><acronym title="Rich Internet Application" xml:lang="en" lang="en">RIA</acronym>의 무분별한 이용 감소</li>
</ul>

<h3><abbr title="Internet Explorer 6" xml:lang="en" lang="en">IE6</abbr>은 아직 살아있지만&hellip;</h3>

<ul>
    <li>곧 시장에서 사라지게 될 것</li>
    <li><abbr title="Internet Explorer 6" xml:lang="en" lang="en">IE6</abbr>에서 사용할 수 없었지만 <abbr title="Internet Explorer 7" xml:lang="en" lang="en">IE7</abbr> 등의 브라우저에서는 사용할 수 있는 기술들에 대한 선학습 필요</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://miya.pe.kr/2008/07/12/ie6%ec%9d%98-%ec%a2%85%eb%a7%90-css3%ec%9d%98-%eb%93%b1%ec%9e%a5/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
	</channel>
</rss>

