
Grab your gear: The official Sanity swag store
Read Grab your gear: The official Sanity swag storeI understand how frustrating this must be! When the Portable Text editor toolbar suddenly appears empty or shows nothing, there are several potential causes to investigate.
CSS Conflicts from Global Styles
The most frequent culprit is CSS from your site bleeding into Sanity Studio, particularly if you're using CSS frameworks like Tailwind CSS or other global resets. These frameworks often apply aggressive resets (like removing borders or setting default sizes) that can make Studio UI elements invisible or non-functional. The toolbar buttons might technically still be there in the DOM, but styling conflicts prevent them from displaying.
If you're using Tailwind with Sanity Studio embedded in your site, ensure your Tailwind configuration excludes the Studio path:
// tailwind.config.js
module.exports = {
content: [
'./app/**/*.{js,ts,jsx,tsx}',
'!./app/studio/**/*', // Exclude Studio directory
],
}Or consider disabling Tailwind's preflight for Studio pages specifically.
Browser Extensions
Ad blockers, privacy extensions, or browser customization tools can inject CSS or block resources that interfere with Studio's UI. Test in an incognito/private window with extensions disabled to rule this out.
Cached Assets
Sometimes browser caching issues can cause Studio UI components to break, especially after updates. Try:
Schema Configuration Issues
Check your Portable Text editor configuration in your schema. If the toolbar configuration was inadvertently changed or if there's an error in the schema definition, the toolbar might not render properly:
defineField({
name: 'body',
type: 'array',
of: [{
type: 'block',
// Ensure marks and styles are properly configured
marks: {
decorators: [
{title: 'Strong', value: 'strong'},
{title: 'Emphasis', value: 'em'}
]
}
}]
})Studio Version or Plugin Conflicts
If you recently updated any dependencies or Studio plugins, there could be compatibility issues. Check your package.json for recent changes and consider:
sanity package versionSince you mentioned making no changes, the issue likely stems from something external to your codebase - a browser update, extension installation, or possibly a dependency that auto-updated. The CSS conflict scenario is particularly common when Sanity Studio is embedded within a Next.js or other framework application where global styles can inadvertently affect Studio components.
Sanity is the developer-first content operating system that gives you complete control. Schema-as-code, GROQ queries, and real-time APIs mean no more workarounds or waiting for deployments. Free to start, scale as you grow.
Content operations
Content backend


The only platform powering content operations
By Industry


Tecovas strengthens their customer connections
Build and Share

Grab your gear: The official Sanity swag store
Read Grab your gear: The official Sanity swag store