diff --git a/frontend/src/metabase/css/dashboard.css b/frontend/src/metabase/css/dashboard.css
index be3fa78f72a38b61991460d07491581cd1abc2a7..d629b7b63a6d1425fb3e6575f13359ea9b82b359 100644
--- a/frontend/src/metabase/css/dashboard.css
+++ b/frontend/src/metabase/css/dashboard.css
@@ -23,6 +23,7 @@
 /* Fullscreen mode */
 .Dashboard.Dashboard--fullscreen {
   min-height: 100vh;
+  height: auto;
 }
 
 .Dashboard.Dashboard--fullscreen .Header-button {
diff --git a/frontend/src/metabase/dashboard/components/DashboardActions.jsx b/frontend/src/metabase/dashboard/components/DashboardActions.jsx
index 8fac8b43b0fe436d81ee172ba7fa51836ba336f5..af0e433cf66e8344aecbc975985cc9d710d65226 100644
--- a/frontend/src/metabase/dashboard/components/DashboardActions.jsx
+++ b/frontend/src/metabase/dashboard/components/DashboardActions.jsx
@@ -9,7 +9,7 @@ import MetabaseSettings from "metabase/lib/settings";
 import NightModeIcon from "metabase/components/icons/NightModeIcon";
 import RefreshWidget from "metabase/dashboard/components/RefreshWidget";
 import Tooltip from "metabase/components/Tooltip";
-import Button from "metabase/core/components/Button";
+import FullscreenIcon from "metabase/components/icons/FullscreenIcon";
 
 import { DashboardHeaderButton } from "metabase/dashboard/containers/DashboardHeader.styled";
 
@@ -137,20 +137,24 @@ export const getDashboardActions = (
     );
   }
 
-  if (!isEditing && !isEmpty && isFullscreen) {
+  if (!isEditing && !isEmpty && (isPublic || isFullscreen)) {
     // option click to enter fullscreen without making the browser go fullscreen
     buttons.push(
-      <Tooltip key="fullscreen" tooltip={t`Exit fullscreen`}>
+      <Tooltip
+        key="fullscreen"
+        tooltip={isFullscreen ? t`Exit fullscreen` : t`Enter fullscreen`}
+      >
         <span
           data-metabase-event={"Dashboard;Fullscreen Mode;" + !isFullscreen}
         >
-          <Button
+          <DashboardHeaderButton
             onClick={e => onFullscreenChange(!isFullscreen, !e.altKey)}
-            borderless
-            icon="contract"
-            iconSize={16}
-            onlyIcon
-          />
+          >
+            <FullscreenIcon
+              className="text-brand-hover"
+              isFullscreen={isFullscreen}
+            />
+          </DashboardHeaderButton>
         </span>
       </Tooltip>,
     );
diff --git a/frontend/test/metabase/scenarios/sharing/public.cy.spec.js b/frontend/test/metabase/scenarios/sharing/public.cy.spec.js
index 4918d6af2df264b11e64c302036bbb0fdbb56302..886fe5b91c143c81cb74976a9b8ee70c4191ab36 100644
--- a/frontend/test/metabase/scenarios/sharing/public.cy.spec.js
+++ b/frontend/test/metabase/scenarios/sharing/public.cy.spec.js
@@ -194,6 +194,9 @@ describe("scenarios > public", () => {
           cy.contains("Add filter").click();
 
           cy.contains(COUNT_DOOHICKEY);
+
+          // Enter full-screen button
+          cy.icon("expand");
         });
       }),
     );