--Note: I am still pretty new to CSS and html)--

Trying to practice my coding (CSS, HTML) further, I decided to make a little thing for myself. Part of the screen(html page) will be filled with little blocks like below. These are all the same sizes, but can have different colors (1 column=1color) and different text in them (as shown below). They should also allow to have images in them. Each little block will be a different link. 

In total there can be over 50 (max 5 in a column) of such little blocks, with each a different text (size,weight,(not-)capitalized) or image and a different link. In the back of my head I am also thinking of adding Javascript to interact with them (as in open the link, or even adding/deleting blocks)

Now I was wondering how I would do it. I see two options: tables and divs.

They both have there pros and cons, and so I would like to ask your opinion on it.
Why going one way or the other? Any other solutions I might have overlooked?

EDIT: Short summary of my idea(lacking time):

1. DIV:
	* Easier to modify each div
	* easier with java
	* easier to modify text or images in it
	* seems to enjoy my preference
	* editing space between blocks(padding) and blocks with the side needs extra code
2. Table:
	* easier to make many at once
	* clearer code
	* Harder to modify text style or image of each block

![Example](https://i.stack.imgur.com/JmFOl.png)