diff options
-rw-r--r-- | media/css/border-radius.htc | 143 | ||||
-rw-r--r-- | media/sass/_projects.sass | 1 | ||||
-rw-r--r-- | media/sass/ie.css | 10 | ||||
-rw-r--r-- | templates/base.html | 2 |
4 files changed, 154 insertions, 2 deletions
diff --git a/media/css/border-radius.htc b/media/css/border-radius.htc new file mode 100644 index 0000000..c3ae104 --- /dev/null +++ b/media/css/border-radius.htc @@ -0,0 +1,143 @@ +--Do not remove this if you are using--
+Original Author: Remiz Rahnas
+Original Author URL: http://www.htmlremix.com
+Published date: 2008/09/24
+
+Changes by Nick Fetchak:
+- IE8 standards mode compatibility
+- VML elements now positioned behind original box rather than inside of it - should be less prone to breakage
+Published date : 2009/11/18
+
+
+<public:attach event="oncontentready" onevent="oncontentready('v08vnSVo78t4JfjH')" />
+<script type="text/javascript">
+
+// findPos() borrowed from http://www.quirksmode.org/js/findpos.html
+function findPos(obj) {
+ var curleft = curtop = 0;
+
+ if (obj.offsetParent) {
+ do {
+ curleft += obj.offsetLeft;
+ curtop += obj.offsetTop;
+ } while (obj = obj.offsetParent);
+ }
+
+ return({
+ 'x': curleft,
+ 'y': curtop
+ });
+}
+
+function oncontentready(classID) {
+ if (this.className.match(classID)) { return(false); }
+
+ if (!document.namespaces.v) { document.namespaces.add("v", "urn:schemas-microsoft-com:vml"); }
+
+ this.className = this.className.concat(' ', classID);
+ var arcSize = Math.min(parseInt(this.currentStyle['-moz-border-radius'] ||
+ this.currentStyle['-webkit-border-radius'] ||
+ this.currentStyle['border-radius'] ||
+ this.currentStyle['-khtml-border-radius']) /
+ Math.min(this.offsetWidth, this.offsetHeight), 1);
+ var fillColor = this.currentStyle.backgroundColor;
+ var fillSrc = this.currentStyle.backgroundImage.replace(/^url\("(.+)"\)$/, '$1');
+ var strokeColor = this.currentStyle.borderColor;
+ var strokeWeight = parseInt(this.currentStyle.borderWidth);
+ var stroked = 'true';
+ if (isNaN(strokeWeight)) {
+ strokeWeight = 0;
+ strokeColor = fillColor;
+ stroked = 'false';
+ }
+
+ this.style.background = 'transparent';
+ this.style.borderColor = 'transparent';
+
+ // Find which element provides position:relative for the target element (default to BODY)
+ var el = this;
+ var limit = 100, i = 0;
+ while ((typeof(el) != 'unknown') && (el.currentStyle.position != 'relative') && (el.tagName != 'BODY')) {
+ el = el.parentElement;
+ i++;
+ if (i >= limit) { return(false); }
+ }
+ var el_zindex = parseInt(el.currentStyle.zIndex);
+ if (isNaN(el_zindex)) { el_zindex = 0; }
+ //alert('got tag '+ el.tagName +' with pos '+ el.currentStyle.position);
+
+ var rect_size = {
+ 'width': this.offsetWidth - strokeWeight,
+ 'height': this.offsetHeight - strokeWeight
+ };
+ var el_pos = findPos(el);
+ var this_pos = findPos(this);
+ this_pos.y = this_pos.y + (0.5 * strokeWeight) - el_pos.y;
+ this_pos.x = this_pos.x + (0.5 * strokeWeight) - el_pos.x;
+
+ var rect = document.createElement('v:roundrect');
+ rect.arcsize = arcSize +'px';
+ rect.strokecolor = strokeColor;
+ rect.strokeWeight = strokeWeight +'px';
+ rect.stroked = stroked;
+ rect.style.display = 'block';
+ rect.style.position = 'absolute';
+ rect.style.top = this_pos.y +'px';
+ rect.style.left = this_pos.x +'px';
+ rect.style.width = rect_size.width +'px';
+ rect.style.height = rect_size.height +'px';
+ rect.style.antialias = true;
+ rect.style.zIndex = el_zindex - 1;
+
+ var fill = document.createElement('v:fill');
+ fill.color = fillColor;
+ fill.src = fillSrc;
+ fill.type = 'tile';
+
+ rect.appendChild(fill);
+ el.appendChild(rect);
+
+ var css = el.document.createStyleSheet();
+ css.addRule("v\\:roundrect", "behavior: url(#default#VML)");
+ css.addRule("v\\:fill", "behavior: url(#default#VML)");
+
+ isIE6 = /msie|MSIE 6/.test(navigator.userAgent);
+ // IE6 doesn't support transparent borders, use padding to offset original element
+ if (isIE6 && (strokeWeight > 0)) {
+ this.style.borderStyle = 'none';
+ this.style.paddingTop = parseInt(this.currentStyle.paddingTop || 0) + strokeWeight;
+ this.style.paddingBottom = parseInt(this.currentStyle.paddingBottom || 0) + strokeWeight;
+ }
+
+ if (typeof(window.rounded_elements) == 'undefined') {
+ window.rounded_elements = new Array();
+
+ if (typeof(window.onresize) == 'function') { window.previous_onresize = window.onresize; }
+ window.onresize = window_resize;
+ }
+ this.element.vml = rect;
+ window.rounded_elements.push(this.element);
+}
+
+function window_resize() {
+ if (typeof(window.rounded_elements) == 'undefined') { return(false); }
+
+ for (var i in window.rounded_elements) {
+ var el = window.rounded_elements[i];
+
+ var strokeWeight = parseInt(el.currentStyle.borderWidth);
+ if (isNaN(strokeWeight)) { strokeWeight = 0; }
+
+ var parent_pos = findPos(el.vml.parentNode);
+ var pos = findPos(el);
+ pos.y = pos.y + (0.5 * strokeWeight) - parent_pos.y;
+ pos.x = pos.x + (0.5 * strokeWeight) - parent_pos.x;
+
+ el.vml.style.top = pos.y +'px';
+ el.vml.style.left = pos.x +'px';
+ }
+
+ if (typeof(window.previous_onresize) == 'function') { window.previous_onresize(); }
+}
+</script>
+
diff --git a/media/sass/_projects.sass b/media/sass/_projects.sass index 3024a40..6623cd4 100644 --- a/media/sass/_projects.sass +++ b/media/sass/_projects.sass @@ -189,6 +189,7 @@ ul#parks color: #fff -moz-border-radius: 25px -webkit-border-radius: 25px + a:hover background= !luxagraf_orange diff --git a/media/sass/ie.css b/media/sass/ie.css index 98d30ff..0c481df 100644 --- a/media/sass/ie.css +++ b/media/sass/ie.css @@ -3,4 +3,12 @@ ul#photo-galleries li margin-right: 16px ul#writing-archive li img - _margin: 0
\ No newline at end of file + _margin: 0 + +ul#parks + div.legend + ul.buttons + li + a + behavior: url('http://media.luxagraf.net/css/border-radius.htc') + border-radius: 25px
\ No newline at end of file diff --git a/templates/base.html b/templates/base.html index 320b114..dfd5d8a 100644 --- a/templates/base.html +++ b/templates/base.html @@ -25,7 +25,7 @@ media="print"> {%block stylesheet%}{%endblock%} - <!--[if lte IE 7]><link rel="stylesheet" href="{{MEDIA_URL}}css/ie.css" type="text/css" media="screen, projection"><![endif]--> + <!--[if IE]><link rel="stylesheet" href="{{MEDIA_URL}}css/ie.css" type="text/css" media="screen, projection"><![endif]--> <link rel="shortcut icon" |