Can a Vitali set contain a perfect set? Can a Vitali set contain a perfect set? I come up with this question but cannot prove or disprove it. For example I tried to construct a Vitali set that contains a Cantor set, but I don't see how I can do it.
 A: Via Zorn's Lemma, this is equivalent to finding a perfect set $P$ containing no distinct elements with rational difference. This can be done without any abstract machinery as follows:
The key (essentially combinatorial) lemma is the following ("interval" means "closed, bounded, nontrivial interval," and when $I,J$ are intervals "$I<J$" means "$\max(I)<\min(J)$"):

Suppose $I_1<I_2<...<I_n$ are intervals and $r$ is a positive real number. Then there are intervals $J_1<J_2<...<J_{2n-1}<J_{2n}$ such that $I_k\supseteq J_{2k-1}\cup J_{2k}$ and no $x,y\in \bigcup_{1\le k\le 2n}J_k$ have $\vert x-y\vert=r$.

HINT: first, WLOG we can assume that each $I_k$ has diameter $<r$. Now just strategically "throw away" some pieces from each interval.
Now given any countable set  of positive reals $C$, we can iteratively apply this lemma to build a decreasing sequence of compact sets that looks like the usual construction of the Cantor set; taking the intersection of the resulting family then gives a perfect set whose set of pairwise differences misses $C$, and setting $C=\mathbb{Q}_{>0}$ addresses the question in the OP.
The above sketch follows a general narrative of "meeting countably many requirements," where each individual requirement can be met by an "atomic strategy." This theme is already present in the proof of the Baire category theorem, which you have probably already seen; it is further developed at multiple points in logic (e.g. back-and-forth constructions, priority arguments, Martin's axiom, forcing, ...), and is I think a very useful intuition to develop.
