diff --git a/package.json b/package.json index de81f3e..6014f56 100755 --- a/package.json +++ b/package.json @@ -13,7 +13,6 @@ "lint": "eslint --ext .js,.vue src test/unit/specs test/e2e/specs" }, "dependencies": { - "chrome-shadow-fixer": "^1.0.1", "font-awesome": "^4.7.0", "material-design-icons": "^3.0.1", "material-icons": "^0.1.0", diff --git a/src/pages/chromeShadowFixer.js b/src/pages/chromeShadowFixer.js new file mode 100644 index 0000000..ea74e73 --- /dev/null +++ b/src/pages/chromeShadowFixer.js @@ -0,0 +1,49 @@ + +const getElements = elements => { + if (elements && elements.length > 0) return elements; + elements = document.getElementsByTagName('*'); + let ret = []; + for (const element of elements) { + const style = window.getComputedStyle(element, null).getPropertyValue('box-shadow'); + if (style !== 'none') { + element.style.boxShadow = 'none'; + ret.push({ + shadow: style, + top: element.offsetTop + 'px', + left: element.offsetLeft + 'px', + width: element.getBoundingClientRect().width + 'px', + height: element.getBoundingClientRect().height + 'px' + }); + } + } + return ret; +}; + +const generateElements = elements => { + let ret = '
'; + elements.forEach((el, i) => (ret += '
')); + ret += '
'; + return ret; +}; + +export const fix = elements => { + const elementsWithShadows = getElements(elements); + if (elementsWithShadows.length < 1) { + console.warn('fixShadows(): No elements to fix shadows.'); + return; + } + const generatedElements = generateElements(elementsWithShadows); + document.body.innerHTML += generatedElements; + elementsWithShadows.forEach((el, i) => { + const element = document.querySelector('#chrome-shadow-fixer-' + i); + element.style.height = el.height; + element.style.width = el.width; + element.style.left = el.left; + element.style.top = el.top; + element.style.position = 'absolute'; + element.style.boxShadow = el.shadow; + element.style['-webkit-print-color-adjust'] = 'exact'; + element.style['-webkit-filter'] = 'opacity(1)'; + }); + return elementsWithShadows; +}; diff --git a/src/pages/resume.vue b/src/pages/resume.vue index 96cfa07..a9f6414 100755 --- a/src/pages/resume.vue +++ b/src/pages/resume.vue @@ -10,12 +10,17 @@