diff --git a/ghost/portal/src/components/Frame.styles.js b/ghost/portal/src/components/Frame.styles.js index 4032e341a9..ea0e93b52b 100644 --- a/ghost/portal/src/components/Frame.styles.js +++ b/ghost/portal/src/components/Frame.styles.js @@ -1,4 +1,4 @@ -/** By default, CRA's webpack bundle combines and appends the main css at root level, so they are not applied inside iframe +/** By default, CRAs webpack bundle combines and appends the main css at root level, so they are not applied inside iframe * This uses a hack where we append `` tag with all CSS inside the head of iframe dynamically, thus making it available easily * We can create separate variables to keep styles grouped logically, and export them as one appeneded string */ @@ -92,7 +92,41 @@ export const SwitchStyle = ` } `; +export const ButtonStyles = ` +.gh-portal-btn { + position: relative; + display: inline-block; + padding: 0 1.8rem; + height: 44px; + border: 0; + font-size: 1.5rem; + line-height: 42px; + font-weight: 500; + letter-spacing: 0.2px; + text-align: center; + text-decoration: none; + white-space: nowrap; + border-radius: 5px; + cursor: pointer; + transition: .4s ease; + box-shadow: none; + user-select: none; + width: 100%; +} + +.gh-portal-btn:hover::before { + position: absolute; + content: ""; + top: 0; + left: 0; + right: 0; + bottom: 0; + background: rgba(255, 255, 255, 0.08); + border-radius: 5px; +} +`; + // Append all styles as string which we want to pass to iframe -const FrameStyle = SwitchStyle; +const FrameStyle = SwitchStyle + ButtonStyles; export default FrameStyle; \ No newline at end of file diff --git a/ghost/portal/src/components/common/ActionButton.js b/ghost/portal/src/components/common/ActionButton.js index efe783b069..65f3516a5f 100644 --- a/ghost/portal/src/components/common/ActionButton.js +++ b/ghost/portal/src/components/common/ActionButton.js @@ -13,25 +13,8 @@ const Styles = ({brandColor, retry, disabled, style = {}}) => { const textColor = getContrastColor(backgroundColor); return { button: { - display: 'inline-block', - padding: '0 1.8rem', - height: '44px', - border: '0', - fontSize: '1.5rem', - lineHeight: '42px', - fontWeight: '500', - letterSpacing: '0.2px', - textAlign: 'center', - textDecoration: 'none', - whiteSpace: 'nowrap', - borderRadius: '5px', - cursor: 'pointer', - transition: '.4s ease', color: textColor, backgroundColor, - boxShadow: 'none', - userSelect: 'none', - width: '100%', ...(style.button || {}) // Override any custom style } }; @@ -40,7 +23,7 @@ const Styles = ({brandColor, retry, disabled, style = {}}) => { function ActionButton({label, onClick, disabled, retry, brandColor, style}) { let Style = Styles({disabled, retry, brandColor, style}); return ( - );