Customize the width of scheduler columns using the .mbsc-schedule-col-width CSS class. This allows you to define fixed or dynamic column widths to fit your layout needs.
When using resources, the defined width is applied to resource columns. If no resources are present, it applies to day columns instead.
Interested in individually adjusting resource widths? Discover how →
Demo
Set the column width:
Width applies to resources or days when off:
css.mbsc-schedule-col-width {
width: 50px;
}

ComponentTemplateCSS
import { CommonModule } from '@angular/common';
import { Component } from '@angular/core';
import { FormsModule } from '@angular/forms';
import {
MbscCalendarEvent,
MbscEventcalendarView,
MbscModule,
MbscResource,
Notifications,
setOptions ,
} from '@mobiscroll/angular';
setOptions({
locale: ,
theme: ' ',
themeVariant: ' ',
});
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
providers: [Notifications],
standalone: true,
imports: [CommonModule, FormsModule, MbscModule],
})
export class AppComponent {
groupBy: 'date' | 'resource' = 'resource';
showResources = 'on';
myWidth = 'small';
myResources: MbscResource[] = [
{ id: 1, name: 'Bart', color: '#328E39' },
{ id: 2, name: 'Jake', color: '#00AABB' },
{ id: 3, name: 'Carl', color: '#EA72C0' },
{ id: 4, name: 'Dana', color: '#FF5733' },
{ id: 5, name: 'Evan', color: '#3366FF' },
{ id: 6, name: 'Faye', color: '#FFD700' },
];
myResEvents: MbscCalendarEvent[] = [
{ start: '2026-11-03T07:00', end: '2026-11-03T09:00', title: 'Sync', resource: 1 },
{ start: '2026-11-04T08:00', end: '2026-11-04T10:00', title: 'Kickoff', resource: 1 },
{ start: '2026-11-05T09:00', end: '2026-11-05T12:00', title: 'Planning', resource: 1 },
{ start: '2026-11-06T09:00', end: '2026-11-06T12:00', title: 'Meeting', resource: 1 },
{ start: '2026-11-07T09:00', end: '2026-11-07T12:00', title: 'Review', resource: 1 },
{ start: '2026-11-08T08:00', end: '2026-11-08T10:00', title: 'Kickoff', resource: 1 },
{ start: '2026-11-09T10:00', end: '2026-11-09T12:00', title: 'Planning', resource: 1 },
{ start: '2026-11-03T16:00', end: '2026-11-03T18:00', title: 'Check-in', resource: 2 },
{ start: '2026-11-04T15:00', end: '2026-11-04T17:00', title: 'Talk', resource: 2 },
{ start: '2026-11-05T13:00', end: '2026-11-05T15:00', title: 'Discussion', resource: 2 },
{ start: '2026-11-06T11:00', end: '2026-11-06T13:00', title: 'Call', resource: 2 },
{ start: '2026-11-07T11:00', end: '2026-11-07T13:00', title: 'Integration', resource: 2 },
{ start: '2026-11-08T13:00', end: '2026-11-08T15:00', title: 'Demo', resource: 2 },
{ start: '2026-11-09T14:00', end: '2026-11-09T16:00', title: 'Fixing', resource: 2 },
{ start: '2026-11-03T09:00', end: '2026-11-03T11:00', title: 'Planning', resource: 3 },
{ start: '2026-11-04T11:00', end: '2026-11-04T13:00', title: 'Demo', resource: 3 },
{ start: '2026-11-05T10:00', end: '2026-11-05T12:00', title: 'Review', resource: 3 },
{ start: '2026-11-06T14:00', end: '2026-11-06T16:00', title: 'Review', resource: 3 },
{ start: '2026-11-07T15:00', end: '2026-11-07T17:00', title: 'Retrospective', resource: 3 },
{ start: '2026-11-08T11:00', end: '2026-11-08T13:00', title: 'Review', resource: 3 },
{ start: '2026-11-09T08:00', end: '2026-11-09T10:00', title: 'Onboarding', resource: 3 },
{ start: '2026-11-03T12:00', end: '2026-11-03T14:00', title: 'Collab', resource: 4 },
{ start: '2026-11-04T14:00', end: '2026-11-04T16:00', title: 'Retro', resource: 4 },
{ start: '2026-11-05T14:00', end: '2026-11-05T16:00', title: 'Feedback', resource: 4 },
{ start: '2026-11-06T10:00', end: '2026-11-06T13:00', title: 'Session', resource: 4 },
{ start: '2026-11-07T10:00', end: '2026-11-07T12:00', title: 'Testing', resource: 4 },
{ start: '2026-11-08T10:00', end: '2026-11-08T12:00', title: 'Stand-up', resource: 4 },
{ start: '2026-11-09T13:00', end: '2026-11-09T15:00', title: 'Rollout', resource: 4 },
{ start: '2026-11-03T11:00', end: '2026-11-03T13:00', title: 'Stand-up', resource: 5 },
{ start: '2026-11-04T10:00', end: '2026-11-04T12:00', title: 'Review', resource: 5 },
{ start: '2026-11-05T11:00', end: '2026-11-05T13:00', title: 'Design', resource: 5 },
{ start: '2026-11-06T15:00', end: '2026-11-06T17:00', title: 'Sprint', resource: 5 },
{ start: '2026-11-07T16:00', end: '2026-11-07T18:00', title: 'Demo', resource: 5 },
{ start: '2026-11-08T15:00', end: '2026-11-08T17:00', title: 'Retro', resource: 5 },
{ start: '2026-11-09T12:00', end: '2026-11-09T14:00', title: 'Review', resource: 5 },
{ start: '2026-11-03T14:00', end: '2026-11-03T16:00', title: 'Retro', resource: 6 },
{ start: '2026-11-04T13:00', end: '2026-11-04T15:00', title: 'Update', resource: 6 },
{ start: '2026-11-05T09:00', end: '2026-11-05T11:00', title: 'Meeting', resource: 6 },
{ start: '2026-11-06T08:00', end: '2026-11-06T10:00', title: 'Stand-up', resource: 6 },
{ start: '2026-11-07T14:00', end: '2026-11-07T16:00', title: 'Call', resource: 6 },
{ start: '2026-11-08T09:00', end: '2026-11-08T11:00', title: 'Update', resource: 6 },
{ start: '2026-11-09T16:00', end: '2026-11-09T18:00', title: 'Strategy', resource: 6 },
];
myEvents: MbscCalendarEvent[] = [
{ start: '2026-11-07T09:00', end: '2026-11-07T11:00', title: 'Review' },
{ start: '2026-11-08T10:00', end: '2026-11-08T12:00', title: 'Demo' },
{ start: '2026-11-09T08:00', end: '2026-11-09T10:00', title: 'Kickoff' },
{ start: '2026-11-09T14:00', end: '2026-11-09T16:00', title: 'Strategy' },
{ start: '2026-11-10T09:00', end: '2026-11-10T11:00', title: 'Stand-up' },
{ start: '2026-11-10T13:00', end: '2026-11-10T15:00', title: 'Integration' },
{ start: '2026-11-11T10:00', end: '2026-11-11T12:00', title: 'Review' },
{ start: '2026-11-12T12:00', end: '2026-11-12T14:00', title: 'Planning' },
{ start: '2026-11-13T11:00', end: '2026-11-13T13:00', title: 'Review' },
{ start: '2026-11-14T15:00', end: '2026-11-14T17:00', title: 'Sync' },
{ start: '2026-11-14T10:00', end: '2026-11-14T12:00', title: 'Retro' },
{ start: '2026-11-15T10:00', end: '2026-11-15T12:00', title: 'Stand-up' },
{ start: '2026-11-16T14:00', end: '2026-11-16T16:00', title: 'Collab' },
{ start: '2026-11-17T08:00', end: '2026-11-17T10:00', title: 'Kickoff' },
{ start: '2026-11-18T09:00', end: '2026-11-18T11:00', title: 'Meeting' },
{ start: '2026-11-19T10:00', end: '2026-11-19T12:00', title: 'Retro' },
{ start: '2026-11-20T15:00', end: '2026-11-20T17:00', title: 'Review' },
{ start: '2026-11-05T10:00', end: '2026-11-05T12:00', title: 'Planning' },
{ start: '2026-11-04T15:00', end: '2026-11-04T17:00', title: 'Talk' },
{ start: '2026-11-03T09:00', end: '2026-11-03T11:00', title: 'Stand-up' },
{ start: '2026-11-02T14:00', end: '2026-11-02T16:00', title: 'Retrospective' },
{ start: '2026-11-01T08:00', end: '2026-11-01T10:00', title: 'Kickoff' },
{ start: '2026-10-31T15:00', end: '2026-10-31T17:00', title: 'Review' },
{ start: '2026-10-30T13:00', end: '2026-10-30T15:00', title: 'Collab' },
{ start: '2026-10-29T09:00', end: '2026-10-29T11:00', title: 'Retro' },
{ start: '2026-10-28T16:00', end: '2026-10-28T18:00', title: 'Discussion' },
{ start: '2026-10-27T14:00', end: '2026-10-27T16:00', title: 'Update' },
{ start: '2026-10-26T10:00', end: '2026-10-26T12:00', title: 'Sprint' },
{ start: '2026-10-25T13:00', end: '2026-10-25T15:00', title: 'Onboarding' },
{ start: '2026-10-24T09:00', end: '2026-10-24T11:00', title: 'Strategy' },
{ start: '2026-10-23T08:00', end: '2026-10-23T10:00', title: 'Meeting' },
];
myView: MbscEventcalendarView = {
scheduler: { type: 'month', startTime: '08:00', endTime: '20:00', allDay: false },
};
}
<mbsc-page class="mds-full-height">
<div class="mbsc-flex-col mds-full-height">
<mbsc-segmented-group class="mbsc-flex-none" [(ngModel)]="myWidth">
<mbsc-segmented value="small">50px</mbsc-segmented>
<mbsc-segmented value="medium">100px</mbsc-segmented>
<mbsc-segmented value="large">150px</mbsc-segmented>
</mbsc-segmented-group>
<mbsc-segmented-group class="mbsc-flex-none" [(ngModel)]="showResources">
<mbsc-segmented value="on">With resources</mbsc-segmented>
<mbsc-segmented value="off">Without resources</mbsc-segmented>
</mbsc-segmented-group>
<div class="mds-overflow-hidden mbsc-flex-1-1">
<mbsc-eventcalendar
[class]="'mds-col-width-' + myWidth"
[data]="showResources === 'on' ? myResEvents : myEvents"
[resources]="showResources === 'on' ? myResources : []"
[view]="myView"
groupBy="date"
></mbsc-eventcalendar>
</div>
</div>
</mbsc-page>
.mds-full-height {
height: 100%;
}
.mds-overflow-hidden {
overflow: hidden;
}
.mds-col-width-small .mbsc-schedule-col-width {
width: 50px;
}
.mds-col-width-medium .mbsc-schedule-col-width {
width: 100px;
}
.mds-col-width-large .mbsc-schedule-col-width {
width: 150px;
}