Fixing column width using JSON column formatting would apply to all users who have access to this list view.
The JSON code I use is:
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
"elmType": "div",
"txtContent": "@currentField",
"style": {
"width": "500px"
}
}
However, there is a feature that allows users to adjust column widths themselves, which is available for users with all permissions including View Only.
On the other hand, users will only be able to adjust how the column is displayed but will not change the contents within. So it should not be a problem.
If the response is helpful, please click "Accept Answer" and upvote it.