모서리가 둥근 테이블 자바스크립트 이용 구현 - 디자인 - 프로그램 아래는 소스입니다. <script> function roundTable(objID) { var obj = document.getElementById(objID); var Parent, objTmp, Table, TBody, TR, TD; var bdcolor, bgcolor, Space; var trIDX, tdIDX, MAX; var styleWidth, styleHeight; // get parent node Parent = obj.parentNode; objTmp = document.createElement('SPAN'); Parent.insertBefore(objTmp, obj); Parent.removeChild(obj); // get attribute bdcolor = obj.getAttribute('rborder'); bgcolor = obj.getAttribute('rbgcolor'); radius = parseInt(obj.getAttribute('radius')); if (radius == null || radius < 1) radius = 1; else if (radius > 6) radius = 6; MAX = radius * 2 + 1; /* create table {{ */ Table = document.createElement('TABLE'); TBody = document.createElement('TBODY'); Table.cellSpacing = 0; Table.cellPadding = 0; for (trIDX=0; trIDX < MAX; trIDX++) { TR = document.createElement('TR'); Space = Math.abs(trIDX - parseInt(radius)); for (tdIDX=0; tdIDX < MAX; tdIDX++) { TD = document.createElement('TD'); styleWidth = '1px'; styleHeight = '1px'; if (tdIDX == 0 || tdIDX == MAX - 1) styleHeight = null; else if (trIDX == 0 || trIDX == MAX - 1) styleWidth = null; else if (radius > 2) { if (Math.abs(tdIDX - radius) == 1) styleWidth = '2px'; if (Math.abs(trIDX - radius) == 1) styleHeight = '2px'; } if (styleWidth != null) TD.style.width = styleWidth; if (styleHeight != null) TD.style.height = styleHeight; if (Space == tdIDX || Space == MAX - tdIDX - 1) TD.style.backgroundColor = bdcolor; else if (tdIDX > Space && Space < MAX - tdIDX - 1) TD.style.backgroundColor = bgcolor; if (Space == 0 && tdIDX == radius) TD.appendChild(obj); TR.appendChild(TD); } TBody.appendChild(TR); } /* }} */ Table.appendChild(TBody); // insert table and remove original table Parent.insertBefore(Table, objTmp); } </script> <table id="ta" width="300" height="100" border="0" radius="3" rborder="#999999" rbgcolor="#F8F8F8"> <tbody><tr> <td valign="top">테스트입니다</td> </tr> </tbody></table> <script>roundTable("ta");</script>
|
'IT' 카테고리의 다른 글
안드로이드 PC개발환경 구축과 SL4A로 PYTHON 가지고 놀기 (0) | 2015.09.29 |
---|---|
핀트레스트는 어떻게 사람들의 마음을 사로잡았나?! (0) | 2015.09.14 |
CSS 코딩이랑 버튼 디자인을 쉽게 구현하는 곳 참조하세요~ (0) | 2015.09.05 |
삼성스마트폰 삼성페이(samsungpay) 2016년까지 최대한 시장늘려야 (0) | 2015.08.18 |
부동산다이어트 정확한 부동산 정보와 모든 수수료 3% 고정 (0) | 2015.08.14 |
댓글