# Creating tables with internal borders with RedCloth

**URL:** <https://www.ruby-forum.com/t/creating-tables-with-internal-borders-with-redcloth/141755>\
**Category:** Ruby\
**Created:** [June 30, 2008, 12:16pm UTC](https://www.ruby-forum.com/t/creating-tables-with-internal-borders-with-redcloth/141755 "2008-06-30T12:16:54Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![crocco](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/fbc32d/32.png) [@crocco](https://www.ruby-forum.com/u/crocco)\
**Post date:** [June 30, 2008, 12:16pm UTC](https://www.ruby-forum.com/t/creating-tables-with-internal-borders-with-redcloth/141755/1 "2008-06-30T12:16:54Z")

</div>

I’m having a problem using RedCloth. I know this question is more suited  
for a  
RedCloth mailing list, but the only one I found (the one on the RedCloth  
page  
on rubyforge) is for people who wants to contribute to it, not for those  
asking for help. If someone knows of another mailing list, please let me  
know.

My problem is quite simple: I want to use RedCloth and Textile to create  
a  
table with borders around the it and between all cells, as the one  
produced by  
specifying the rules=“all” attribute to the html table tag:

...

I can’t find out how to obtain this. The standard Textile syntax for  
tables  
produce a borderless table, while specifying the border style for the  
whole  
table, as shown in the Textile reference ([Textile Reference](http://hobix.com/textile/))  
only puts  
the border around the whole table.

I know I can insert the table using html, but before doing so, I’d like  
to be  
sure there isn’t a better alternative.

Any ideas?

Thanks in advance

Stefano

---

<div class="post-metadata">

**Author:** ![crocco](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/fbc32d/32.png) [@crocco](https://www.ruby-forum.com/u/crocco)\
**Post date:** [June 30, 2008, 12:54pm UTC](https://www.ruby-forum.com/t/creating-tables-with-internal-borders-with-redcloth/141755/2 "2008-06-30T12:54:24Z")

</div>

Stefano C. wrote:

> …  
> Any ideas?
> 
> Thanks in advance
> 
> Stefano

You want a border around every cell? If so, try something like this.

table(mytable).  
|10|20|30|40|

Then your CSS could look something like this:

table.mytable td {  
border: 1px solid black;  
}

---

<div class="post-metadata">

**Author:** ![crocco](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/fbc32d/32.png) [@crocco](https://www.ruby-forum.com/u/crocco)\
**Post date:** [June 30, 2008, 1:12pm UTC](https://www.ruby-forum.com/t/creating-tables-with-internal-borders-with-redcloth/141755/3 "2008-06-30T13:12:35Z")

</div>

On Monday 30 June 2008, Michael M. wrote:

> > to be sure there isn’t a better alternative.
> 
> |10|20|30|40|
> 
> Then your CSS could look something like this:
> 
> table.mytable td {  
> border: 1px solid black;  
> }

Thanks for your answer, but this is not what I need. It seems I wasn’t  
very  
clear in explaining my problem. I need a table with a grid separating  
rows and  
columns, something like this:

* * *

|_|_|_|  
|_|_|_|  
|_|_|\_|

What you suggested puts a border around each cell, but a border which is  
separated from the border around the neighbour cells (re-reading my  
original  
post, I must admit that I seemed to be asking for this. I apologize for  
having  
been so confusing.)

Stefano

---

<div class="post-metadata">

**Author:** ![crocco](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/fbc32d/32.png) [@crocco](https://www.ruby-forum.com/u/crocco)\
**Post date:** [June 30, 2008, 1:40pm UTC](https://www.ruby-forum.com/t/creating-tables-with-internal-borders-with-redcloth/141755/4 "2008-06-30T13:40:46Z")

</div>

> What you suggested puts a border around each cell, but a border which is  
> separated from the border around the neighbour cells (re-reading my original  
> post, I must admit that I seemed to be asking for this. I apologize for having  
> been so confusing.)

Just add this to your CSS (change table.mytable as needed)

```
table.mytable {
    border-collapse:collapse;
}

```

Regards,  
Rimantas

---

<div class="post-metadata">

**Author:** ![crocco](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/fbc32d/32.png) [@crocco](https://www.ruby-forum.com/u/crocco)\
**Post date:** [June 30, 2008, 1:30pm UTC](https://www.ruby-forum.com/t/creating-tables-with-internal-borders-with-redcloth/141755/5 "2008-06-30T13:30:47Z")

</div>

Stefano C. wrote:

> > > produced by specifying the rules=“all” attribute to the html table tag:  
> > > I know I can insert the table using html, but before doing so, I’d like
> 
> columns, something like this:  
> Stefano

The same can be used with some minor tweaks. Play with the padding and  
spacing of the td tags as well as which edges the borders go on.

---

<div class="post-metadata">

**Author:** ![crocco](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/fbc32d/32.png) [@crocco](https://www.ruby-forum.com/u/crocco)\
**Post date:** [June 30, 2008, 4:07pm UTC](https://www.ruby-forum.com/t/creating-tables-with-internal-borders-with-redcloth/141755/6 "2008-06-30T16:07:30Z")

</div>

On Monday 30 June 2008, Rimantas L. wrote:

> ## Regards, Rimantas
> 
> [http://rimantas.com/](http://rimantas.com/)

Thanks, but this only puts a border around the whole table (unless I  
misunderstand you). What I’d like is to obtain the following html output  
from  
RedCloth:

| a | b | c |
| d | e | f |

I’m not an expert of html, but I think the key is the rules=“all”  
attribute,  
which I can’t set from RedCloth (at least as far as I know) and which  
can’t be  
set using CSS.

Stefano

---

<div class="post-metadata">

**Author:** ![crocco](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/fbc32d/32.png) [@crocco](https://www.ruby-forum.com/u/crocco)\
**Post date:** [June 30, 2008, 4:44pm UTC](https://www.ruby-forum.com/t/creating-tables-with-internal-borders-with-redcloth/141755/7 "2008-06-30T16:44:29Z")

</div>

On Monday 30 June 2008, Hassan S. wrote:

> On Mon, Jun 30, 2008 at 4:06 AM, Stefano C. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
> wrote:
> 
> > What you suggested puts a border around each cell, but a border which is  
> > separated from the border around the neighbour cells
> 
> If you’re going to do web work, you need to learn CSS. In this case,  
> reading [http://www.w3.org/TR/CSS21/tables.html](http://www.w3.org/TR/CSS21/tables.html), particularly  
> section 17.6 Borders, should help.
> 
> FWIW,

I read that document before sending the first post, but not well enough,  
it  
seems. Having seen the expression “separated borders model”, and the  
figure  
which goes with it, I too quickly assumed it wasn’t what I was looking  
for (I  
wanted united borders, not separated ones). At any rate, reading some of  
the  
previous answers, I looked back at it and, before my last post, decided  
to try  
changing the border-spacing attribute, but by mistake changed it in the  
td  
element instead of the table, and so it didn’t work.

At any rate, setting the border-spacing attribute to 0 for the table  
solved  
the problem.

Thanks

Stefano

---

<div class="post-metadata">

**Author:** ![crocco](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/fbc32d/32.png) [@crocco](https://www.ruby-forum.com/u/crocco)\
**Post date:** [June 30, 2008, 4:18pm UTC](https://www.ruby-forum.com/t/creating-tables-with-internal-borders-with-redcloth/141755/8 "2008-06-30T16:18:39Z")

</div>

On Mon, Jun 30, 2008 at 4:06 AM, Stefano C.  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> What you suggested puts a border around each cell, but a border which is  
> separated from the border around the neighbour cells

If you’re going to do web work, you need to learn CSS. In this case,  
reading [http://www.w3.org/TR/CSS21/tables.html](http://www.w3.org/TR/CSS21/tables.html), particularly  
section 17.6 Borders, should help.

FWIW,
