diff --git a/resources/views/table_content/col.blade.php b/resources/views/table_content/col.blade.php
new file mode 100644
index 00000000..9fc2e8ff
--- /dev/null
+++ b/resources/views/table_content/col.blade.php
@@ -0,0 +1,3 @@
+
+ {{ $slot }}
+
diff --git a/src/Components/TableContent/Col.php b/src/Components/TableContent/Col.php
new file mode 100644
index 00000000..df7dbc28
--- /dev/null
+++ b/src/Components/TableContent/Col.php
@@ -0,0 +1,41 @@
+setGlobalAttributes();
+ }
+
+ /**
+ * Standard render function
+ */
+ public function render(): Application|ContractedApplication|ContractedView|Factory|View
+ {
+ return view(
+ 'lw-bits::table_content.col',
+ [
+ 'globalAttributes' => $this->getGlobalAttributes(),
+ 'slot' => '',
+ ]
+ );
+ }
+}
diff --git a/tests/Feature/TableContent/ColTest.php b/tests/Feature/TableContent/ColTest.php
new file mode 100644
index 00000000..67d9a74f
--- /dev/null
+++ b/tests/Feature/TableContent/ColTest.php
@@ -0,0 +1,119 @@
+assertStatus(200);
+});
+
+it('can render with accesskey', function () {
+ Livewire::test(MyCol::class, ['accessKey' => true])
+ ->assertSee('accesskey');
+});
+
+it('can render with autocapitalize', function () {
+ Livewire::test(MyCol::class, ['autoCapitalize' => true])
+ ->assertSee('autocapitalize');
+});
+
+it('can render with autofocus', function () {
+ Livewire::test(MyCol::class, ['autoFocus' => true])
+ ->assertSee('autofocus');
+});
+
+it('can render with contenteditable', function () {
+ Livewire::test(MyCol::class, ['contentEditable' => true])
+ ->assertSee('contenteditable');
+});
+
+it('can render with css classes', function () {
+ Livewire::test(MyCol::class, ['cssClasses' => ['class1', 'class2']])
+ ->assertSee('class="class1 class2"', false);
+});
+
+it('can render with data-*', function () {
+ Livewire::test(MyCol::class, ['data' => ['name' => 'main-col']])
+ ->assertSee('data-name="main-col"', false);
+});
+
+it('can render with dir', function () {
+ Livewire::test(MyCol::class, ['direction' => 'rtl'])
+ ->assertSee('dir="rtl"', false);
+});
+
+it('can render with draggable', function () {
+ Livewire::test(MyCol::class, ['draggable' => true])
+ ->assertSee('draggable');
+});
+
+it('can render with enterkeyhint', function () {
+ Livewire::test(MyCol::class, ['enterKeyHint' => 'enter'])
+ ->assertSee('enterkeyhint="enter"', false);
+});
+
+it('can render with hidden', function () {
+ Livewire::test(MyCol::class, ['hidden' => true])
+ ->assertSee('hidden');
+});
+
+it('can render with id', function () {
+ Livewire::test(MyCol::class, ['id' => 'main-col'])
+ ->assertSee('id="main-col"', false);
+});
+
+it('can render with language', function () {
+ Livewire::test(MyCol::class, ['language' => 'en'])
+ ->assertSee('lang="en"', false);
+});
+
+it('can render with nonce', function () {
+ Livewire::test(MyCol::class, ['nonce' => 'abc123'])
+ ->assertSee('nonce="abc123"', false);
+});
+
+it('can render with parts', function () {
+ Livewire::test(MyCol::class, ['parts' => ['part1', 'part2']])
+ ->assertSee('part="part1 part2"', false);
+});
+
+it('can render with popOver', function () {
+ Livewire::test(MyCol::class, ['popOver' => true])
+ ->assertSee('popover');
+});
+
+it('can render with role', function () {
+ Livewire::test(MyCol::class, ['role' => 'main'])
+ ->assertSee('role="main"', false);
+});
+
+it('can render with slot', function () {
+ Livewire::test(MyCol::class, ['slotAttribute' => 'main-col'])
+ ->assertSee('slot="main-col"', false);
+});
+
+it('can render with spellcheck', function () {
+ Livewire::test(MyCol::class, ['spellCheck' => true])
+ ->assertSee('spellcheck');
+});
+
+it('can render with styles', function () {
+ Livewire::test(MyCol::class, ['styles' => ['color' => 'red', 'font-size' => '16px']])
+ ->assertSee('style="color:red;font-size:16px"', false);
+});
+
+it('can render with tabindex', function () {
+ Livewire::test(MyCol::class, ['tabIndex' => 1])
+ ->assertSee('tabindex="1"', false);
+});
+
+it('can render with title', function () {
+ Livewire::test(MyCol::class, ['title' => 'main-col'])
+ ->assertSee('title="main-col"', false);
+});
+
+it('can render with translate', function () {
+ Livewire::test(MyCol::class, ['translate' => true])
+ ->assertSee('translate');
+});
diff --git a/tests/TestSupport/Components/TableContent/MyCol.php b/tests/TestSupport/Components/TableContent/MyCol.php
new file mode 100644
index 00000000..72593208
--- /dev/null
+++ b/tests/TestSupport/Components/TableContent/MyCol.php
@@ -0,0 +1,7 @@
+